SELECT column1, column2, ...
FROM table
ORDER BY column1 [ASC | DESC];
SELECT first_name,
last_name,
salary
FROM employees
WHERE department_id = 60
ORDER BY salary DESC;
first_name | last_name | salary
------------+-----------+---------
Alexander | Hunold | 9000.00
Bruce | Ernst | 6000.00
David | Austin | 4800.00
Valli | Pataballa | 4800.00
Diana | Lorentz | 4200.00
(5 rows)
SELECT column1, column2, ...
FROM table
ORDER BY column1 ASC, column2 DESC, ...;
SELECT first_name,
last_name,
salary
FROM employees
WHERE department_id = 60
ORDER BY salary DESC, first_name DESC;
first_name | last_name | salary
------------+-----------+---------
Alexander | Hunold | 9000.00
Bruce | Ernst | 6000.00
Valli | Pataballa | 4800.00
David | Austin | 4800.00
Diana | Lorentz | 4200.00
(5 rows)
SELECT first_name,
last_name,
salary
FROM employees
ORDER BY hire_date;
SELECT first_name,
last_name,
salary
FROM employees
ORDER BY 1, 3;
CREATE TABLE tbl_char(c1 varchar(10));
INSERT INTO tbl_char VALUES('CAT'), ('cat'), ('dog');
SELECT *
FROM tbl_char
ORDER BY c1;
c1
-----
cat
CAT
dog
(3 rows)
SELECT first_name,
last_name,
commission_pct
FROM employees
WHERE first_name = 'Peter'
ORDER BY commission_pct;
first_name | last_name | commission_pct
------------+-----------+----------------
Peter | Hall | 0.25
Peter | Tucker | 0.30
Peter | Vargas |
(3 rows)
SELECT first_name,
last_name,
commission_pct
FROM employees
WHERE first_name = 'Peter'
ORDER BY commission_pct NULLS FIRST;
first_name | last_name | commission_pct
------------+-----------+----------------
Peter | Vargas |
Peter | Hall | 0.25
Peter | Tucker | 0.30
(3 rows)
原文作者:SQL编程思想;如有侵权,请联系管理员删除。