SQL語句之ORDER BY子句
對結果進行排序(ORDER BY子句)
在SQL中可以使用ORDER BY子句對查詢的結果進行排序。
例:現在使用查詢全部的語句查詢表EMP中的所有內容。
l SELECT * FROM emp ;
輸出如下:
此時,從查詢結果可以發現,是按照僱員的編號進行排序的,那麼此時如果要對使用指定的列進行排序,則就必須使用ORDER BY子句。
語法格式如下:
[SELECT] [{DISTINCT}] [* |
例:要求按照工資由低到高排序。
l SELECT * FROM emp ORDER BY sal ;
輸出如下:
從表中可以看到表中的內容是按照工資(SAL)的遞增順序進行排列的。
例:上面是按照遞增的順序進行排列的,現在要求使用遞減的順序進行排列。
l ASC:表示遞增排列
l DESC:表示遞減排列
l SELECT * FROM emp ORDER BY sal ASC ;
輸出如下:
可以看到和上面的是一樣的工資(SAL)欄中是按遞增的順序排列的
l SELECT * FORM emp ORDER BY sal DESC ;
輸出如下:
可以看到工資(SAL)中是按照遞減的順序進行排列的
例:要求查詢出10部門的所有僱員資訊,查詢的資訊按照工資由高到低排序,如果工資相等,則按照僱傭日期有早到晚進行排序。
l 此時存在兩個排序條件,第一個是降序,第二個是升序。
l SELECT * FROM emp WHERE deptno = 10 ORDER BY sal DESC , hiredate ASC;
輸出如下:
排序操作肯定是放在整個SQL語句的最後執行。