首頁 > 資料庫 > mysql教程 > 如何對最後帶有 NULL 值的 MySQL 結果進行排序?

如何對最後帶有 NULL 值的 MySQL 結果進行排序?

Linda Hamilton
發布: 2024-12-09 00:29:09
原創
1026 人瀏覽過

How to Sort MySQL Results with NULL Values Last?

如何對最後帶有空值的MySQL 結果進行排序

當帶有數字列的MySQL 結果進行排序時,空值可能會出現問題,因為它們被視為零。這可能會導致意外的排序,即空值出現在非空值之前。

為了解決此問題,MySQL 提供了一種未記錄的語法,讓您可以將空值放在最後排序。這是透過在列名之前放置一個減號(-) 並將ASC 切換為DESC 來實現的:

SELECT * FROM tablename WHERE visible=1 ORDER BY -position DESC, id DESC
登入後複製

此語法本質上反轉了位置DESC 排序,將空值放在最後,同時保持與非空值。

例如,如果您有以下資料:

NULL, NULL, NULL, 1, 2, 3, 4
登入後複製
登入後複製

使用標準ORDER BY position ASC, id DESC 語句將導致:

NULL, NULL, NULL, 1, 2, 3, 4
登入後複製
登入後複製

但是,使用-position DESC語法將產生所需的排序:

1, 2, 3, 4, NULL, NULL, NULL
登入後複製

此未記錄的語法提供了方便的確保空值在 MySQL 結果中排在最後的方法。需要注意的是,這不是標準的 SQL 功能,並且可能並非所有資料庫系統都支援。

以上是如何對最後帶有 NULL 值的 MySQL 結果進行排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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