从今天开始,将进入SQL语句的高级部分,昨天的都是基础。
ORDER BY 关键词用于对结果进行排序。
对行进行分类
ORDER BY 子语句用于对行进行排序。
Orders表:
Company | OrderNumber |
---|---|
Sega | 3412 |
ABC Shop | 5678 |
Schools | 2312 |
Schools | 6798 |
实例 1
以字母顺序显示公司名称:
SELECT Company, OrderNumber FROM Orders ORDER BY Company;
结果:
Company | OrderNumber |
---|---|
ABC Shop | 5678 |
Sega | 3412 |
Schools | 6798 |
Schools | 2312 |
实例 2
以字母顺序显示公司名称(Company),并以数字顺序显示顺序号(OrderNumber):
SELECT Company, OrderNumber FROM Orders ORDER BY Company, OrderNumber;
结果:
Company | OrderNumber |
---|---|
ABC Shop | 5678 |
Sega | 3412 |
Schools | 2312 |
Schools | 6798 |
实例 3
以逆字母顺序显示公司名称:
SELECT Company, OrderNumber FROM Orders ORDER BY Company DESC;
结果:
Company | OrderNumber |
---|---|
Schools | 6798 |
Schools | 2312 |
Sega | 3412 |
ABC Shop | 5678 |
实例 4
以逆字母顺序显示公司名称,并以数字顺序显示顺序号:
SELECT Company, OrderNumber FROM Orders ORDER BY Company DESC, OrderNumber ASC;
结果:
Company | OrderNumber |
---|---|
Schools | 2312 |
Schools | 6798 |
Sega | 3412 |
ABC Shop | 5678 |
注意:在以上的结果中有两个相等的公司名称 (School)。只有这一次,在第一列中有相同的值时,第二列是以升序排列的。如果第一列中有些值为 nulls 时,情况也是这样的。