练习用表:
排序数据
输入
SELECT name FROM student ORDER BY name;
输出
这样name列就以升序排序展示了。
通常,ORDER BY子句中使用的列将是为显示所选择的列。但是,实际上不一定要这样,用非检索的列排序数据是完全合法的。比如:
输入
SELECT name FROM student ORDER BY birth;
输出
name列就按照出生年份的升序顺序排列了,也就是说,第一排的zhanglaoda为六位中年龄最大的。
按多个列排序
输入
SELECT name,birth,department FROM student ORDER BY birth,department;
#首先按birth排序,当birth相同时,按department排序;
输出
指定排序方向
为了进行降序排序,必须指定DESC关键字。如:
输入
SELECT id,name FROM student ORDER BY id DESC,name;
输出
注意,DESC指定的是id列,不指定name列。如果想在多个列上进行降序排序,必须对每个列指定DESC关键字。
巧妙利用ORDER BY和LIMIT的组合
举个小例子:我现在想要找出这张表中年龄最小的那一位,就可以通过ORDER BY 和LIMIT 关键字的组合来实现。
输入
SELECT name FROM student ORDER BY birth DESC LIMIT 1;
输出