1. 程式人生 > >SQL語句之ORDER BY子句

SQL語句之ORDER BY子句

對結果進行排序(ORDER BY子句)

      在SQL中可以使用ORDER BY子句對查詢的結果進行排序。

      例:現在使用查詢全部的語句查詢表EMP中的所有內容。

            l  SELECT * FROM emp ;

            輸出如下:

            

            此時,從查詢結果可以發現,是按照僱員的編號進行排序的,那麼此時如果要對使用指定的列進行排序,則就必須使用ORDER BY子句。

            語法格式如下:

                    [SELECT] [{DISTINCT}] [* | 

具體的列別名 FROM 表名稱] [{WHERE 條件(s)}] [{ORDER BY 排序的欄位1,  排序的欄位2 ASC | DESC}]

例:要求按照工資由低到高排序。

            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語句的最後執行。