MySQL NULL 過濾和排序
MySQL 中使用ORDER BY 排序資料時,空值被視為0,導致所需排序不一致。若要解決此問題,請考慮使用特殊語法將空值強製到排序清單的末端。
要按升序對值進行排序並將空值放在末尾,請使用以下語法:
ORDER BY -position DESC
這會反轉位置列的預設ASC 排序,有效地將空值視為最高值。透過將其與id 列的DESC 排序結合,您可以實現所需的排序:
SELECT * FROM tablename WHERE visible=1 ORDER BY -position DESC, id DESC
這將導致以下排序:
1, 2, 3, 4, NULL, NULL, NULL
請記住,此語法是MySQL 中未記錄,且可能並非在所有版本中都可用。若要獲得全面的參考,請參閱有關 ORDER BY 和附加標誌的 MySQL 文件。
以上是如何對結尾為 NULL 值的 MySQL 資料進行排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!