MySQL中如何根據條件對不同欄位的資料進行排序?

DDD
發布: 2024-11-16 02:09:02
原創
355 人瀏覽過

How to Order Data By Different Columns Based on a Condition in MySQL?

如何依照條件依照不同欄位排序

在MySQL 中,可以依照條件依照不同列排序資料使用SQL 函數或CASE語句。

使用 IF函數:

要在 ORDER BY 子句中使用 IF 函數,可以指定兩個用逗號分隔的表達式。第一個表達式是決定使用哪個表達式的條件。第二個表達式是條件為 true 時所使用的值。

例如:

ORDER BY IF(TYPE='Member', LNAME, GROUPNAME) ASC
登入後複製

如果 TYPE 列等於 ',則此語句將按 LNAME 列對資料進行排序Member',如果 TYPE 列等於“Group”,則按 GROUPNAME 列。

使用 CASE語句:

CASE 語句是一種更靈活的選項,用於根據條件按不同列對資料進行排序。它允許您指定多個條件和相應的表達式。

例如:

ORDER BY 
    CASE `type` 
        WHEN 'Member' THEN LNAME 
        WHEN 'Group' THEN GROUPNAME
        ELSE 1 END 
    ASC
登入後複製

在此語句中,如果type 列等於',則資料將按LNAME 列排序Member',如果類型列等於“Group”,則按GROUPNAME 列,否則按值1。

以上是MySQL中如何根據條件對不同欄位的資料進行排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板