MySQL-排序資料

LiberHome 發表於 2022-06-09
MySQL

按某一列排序

  • 經過SELECT篩選後的資料,會直接以底層表中出現的順序顯示(收到資料存入的順序、資料增刪更新等影響)
  • SQL由子句構成,有些子句是必須的,有些事可選的。
  • 可以使用ORDER BY 子句對SELECT檢索出的資料進行排序,ORDER BY 取一個或多個列名,並且據此進行輸出排序。

舉個例子:

SELECT p_name FROM products ORDER BY p_name;

這樣MySQL就會按照p_name的字母順序對資料進行排序輸出

按多列排序

需要按照不止一個欄位進行排序的時候(比如先按照價格排序,價格相同的時候按照銷量排序等等)只需要在ORDER BY 後面將指定的列名用逗號按順序隔開即可。
比如:

SELECT p_name FROM products ORDER BY p_name, p_price;

指定升序or降序

ORDER BY預設是升序,也可以使用DESC關鍵字進行降排序

SELECT p_name FROM products ORDER BY p_name DREC;

參考:Forta B. MySQL crash course[M]. Pearson Education India, 2006.