SELECT prod_name FROM products(未排序)
Fish bean bag toy
Bird bean bag toy
Rabbit bean bag toy
8 inch teddy bear
12 inch teddy bear
18 inch teddy bear
Raggedy Ann
King doll
Queen doll
SELECT prod_name FROM products ORDER BY prod_name(排序)
12 inch teddy bear
18 inch teddy bear
8 inch teddy bear
Bird bean bag toy
Fish bean bag toy
King doll
Queen doll
Rabbit bean bag toy
Raggedy Ann
子句
子句通常由一个关键字加上所提供的数据组成。
如:SELECT语句的 FROM子句,ORDER BY子句
- 上个例子就是ORDERBY子句取一个或多个列的名字,据此进行输出进行排序
ORDER BY子句必须是最后一个子句
按多个列排序 SELECT prod_id,prod_price,prod_name FROM products ORDER BY prod_price,prod_name
(简单指定列名,列名之间用逗号隔开)
SELECT prod_id,prod_price,prod_name FROM products ORDER BY prod_price,prod_name
BNBG02 3.49 Bird bean bag toy
BNBG01 3.49 Fish bean bag toy
BNBG03 3.49 Rabbit bean bag toy
RGAN01 4.99 Raggedy Ann
BR01 5.99 8 inch teddy bear
BR02 8.99 12 inch teddy bear
RYL01 9.49 King doll
RYL02 9.49 Queen doll
BR03 11.99 18 inch teddy bear
order by子句对后面的的列名同时起作用,
- 如果有多列相同的price,在对name进行排序。
- 如果没有相同的price,不会对name进行排序。
按列位置排序 SELECT prod_id,prod_price,prod_name FROM products ORDER BY 2,3;
SELECT prod_id,prod_price,prod_name FROM products ORDER BY 2,3;
BNBG02 3.49 Bird bean bag toy
BNBG01 3.49 Fish bean bag toy
BNBG03 3.49 Rabbit bean bag toy
RGAN01 4.99 Raggedy Ann
BR01 5.99 8 inch teddy bear
BR02 8.99 12 inch teddy bear
RYL01 9.49 King doll
RYL02 9.49 Queen doll
BR03 11.99 18 inch teddy bear
和刚才的结果一样,2代表和select关键字后面的列名的第二个名字,3就是第三个呗。
如果有必要,可是混合使用实际列名和相对列名
指定排序反向 SELECT prod_id,prod_price,prod_name FROM products ORDER BY prod_price DESC;(降序排序)
SELECT prod_id,prod_price,prod_name FROM products ORDER BY prod_price DESC;
SELECT prod_id,prod_price,prod_name FROM products ORDER BY prod_price DESC,prod_name;
DESC关键字只用到直接位于其前面的列名,如果在多个列上进行降序排序,需要对每一列指定DESC关键字