English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
في PostgreSQL،ORDER BY يستخدم لترتيب بيانات عمود واحد أو أكثر تصاعديًا (ASC) أو تنازليًا (DESC).
ORDER BY قاعدة النص الأساسي للجملة هي:
SELECT column-list FROM table_name [WHERE condition] [ORDER BY column1, column2, .. columnN] [ASC | DESC];
يمكنك استخدام عمود واحد أو أكثر في ORDER BY، ولكن يجب التأكد من أن العمود الذي يتم ترتيبه موجود.
ASC يعني تصاعدي،DESC يعني تنازلي.
إنشاء جدول COMPANY (تحميل ملف SQL لـ COMPANY )،المحتوى التالي هو:
SELECT * FROM COMPANY; id | name | age | address | salary ----+-------+-----+-----------+-------- 1 | Paul | 32 | California | 20000 2 | Allen | 25 | Texas | 15000 3 | Teddy | 23 | Norway | 20000 4 | Mark | 25 | Rich-Mond | 65000 5 | David | 27 | Texas | 85000 6 | Kim | 22 | South-Hall | 45000 7 | James | 24 | Houston | 10000 (7 صفوف)
السلسلة التالية ستعطي ترتيب النتائج بناءً على قيمة حقل AGE في ترتيب تصاعدي:
SELECT * FROM COMPANY ORDER BY AGE ASC;
得到以下结果:
id | name | age | address | salary ----+-------+-----+----------------------------------------------------+-------- 6 | Kim | 22 | South-Hall | 45000 3 | Teddy | 23 | Norway | 20000 7 | James | 24 | Houston | 10000 4 | Mark | 25 | Rich-Mond | 65000 2 | Allen | 25 | Texas | 15000 5 | David | 27 | Texas | 85000 1 | Paul | 32 | California | 20000 (7 صفوف)
下面示例将对结果根据 NAME 字段值和 SALARY 字段值进行升序排序:
w3codeboxdb=# SELECT * FROM COMPANY ORDER BY NAME, SALARY ASC;
得到以下结果:
id | name | age | address | salary ----+-------+-----+----------------------------------------------------+-------- 2 | Allen | 25 | Texas | 15000 5 | David | 27 | Texas | 85000 7 | James | 24 | Houston | 10000 6 | Kim | 22 | South-Hall | 45000 4 | Mark | 25 | Rich-Mond | 65000 1 | Paul | 32 | California | 20000 3 | Teddy | 23 | Norway | 20000 (7 صفوف)
下面示例将对结果根据NAME字段值进行降序排列:
w3codeboxdb=# SELECT * FROM COMPANY ORDER BY NAME DESC;
得到以下结果:
id | name | age | address | salary ----+-------+-----+----------------------------------------------------+-------- 3 | Teddy | 23 | Norway | 20000 1 | Paul | 32 | California | 20000 4 | Mark | 25 | Rich-Mond | 65000 6 | Kim | 22 | South-Hall | 45000 7 | James | 24 | Houston | 10000 5 | David | 27 | Texas | 85000 2 | Allen | 25 | Texas | 15000 (7 صفوف)