PostgreSQL

سرفصل دروس

ORDER BY

مقدمه ای بر دستور ORDER BY در PostgreSQL 

هنگامیکه پرس و جویی بر دیتاهای یک جدول انجام می دهید، PostgreSQL ردیف ها را بر اساس ترتیب ورود آنها به جدول بر می گرداند. برای مرتب کردن این لیست از دستور ORDER BY استفاده می شود. دستور ORDER BY به شما اجازه می دهد ردیف های برگردانده شده توسط SELECT را بصورت صعودی (ascending) و نزولی (descending) مرتب نمایید. کد زیر دستور زبان ORDER BY را نمایش می دهد: 

SELECT
 column_1,
 column_2
FROM
 tbl_name
ORDER BY
 column_1 ASC,
 column_2 DESC;

به موارد زیر توجه نمایید: 

  • ستون هایی که می خواهید مرتب شوند را در قسمت ORDER BY قرار دهید. هنگامیکه می خواهید از چندین ستون برای مرتب سازی استفاده نمایید آنها را با کاما از هم جدا نمایید. 
  • از ASC برای مرتب سازی صعودی و از DESC برای مرتب سازی نزولی استفاده نمایید. در صورتیکه از هیچکدام از این دستورات استفاده ننمایید ORDER BY بصورت پیشفرض صعودی مرتب می نماید. 

 

مثال ORDER BY در PostgreSQL 

مثال زیر لیست مشتریان را بر اساس نام بصورت صعودی مرتب می نماید: 

SELECT
  first_name,
  last_name
FROM
   customer
ORDER BY
   first_name ASC;

مرتب شده توسط نام

 

اگر بخواهید لیست مشتریان را بر اساس نام خانوادگی بصورت نزولی مرتب نمایید می توانید از دستور DESC بصورت زیر استفاده نمایید: 

SELECT
       first_name,
       last_name
FROM
       customer
ORDER BY
       last_name DESC;

مرتب شده بر اساس نام خانوادگی

 

اگر بخواهید لیست مشتریان را ابتدا بر اساس نام بصورت صعودی و سپس لیست مرتب شده را بر اساس نام خانوادگی بصورت نزولی مرتب نمایید می توانید از کد زیر استفاده نمایید: 

SELECT
 first_name,
 last_name
FROM
 customer
ORDER BY
 first_name ASC,
 last_name DESC;

مرتب شده بر اساس نام و نام خانوادگی

 

توجه داشته باشید که ANS-SQL استادارد فقط به شما اجازه مرتب سازی ستون هایی را می دهد که در قسمت SELECT مشخص شده باشند. ولی PostgreSQL  این محدودیت را ندارد و می توانید بر اساس هر ستونی حتی اگر در قسمت SELECT نباشد مرتب سازی را انجام دهید. البته پیروی از قوانین ANSI-SQL استاندارد می تواند مفید باشد. 

اشتراک گذاری :