-2
我有一個類別表,我已經使用了一個字段顯示順序。但問題是,默認情況下,此字段中將有零值。所以現在假設如果我在兩條記錄中設置了顯示順序1和2,那麼對於所有其他記錄,顯示順序中將有零值。如果默認值爲零,如何設置mysql查詢的升序
現在,如果我按顯示順序顯示記錄,那麼它首先顯示零值。實際上,我希望首先這些記錄應顯示在我已設置顯示順序(即大於零)的位置。所有的零值應該被視爲最後的記錄。
如何爲此編寫查詢?
我有一個類別表,我已經使用了一個字段顯示順序。但問題是,默認情況下,此字段中將有零值。所以現在假設如果我在兩條記錄中設置了顯示順序1和2,那麼對於所有其他記錄,顯示順序中將有零值。如果默認值爲零,如何設置mysql查詢的升序
現在,如果我按顯示順序顯示記錄,那麼它首先顯示零值。實際上,我希望首先這些記錄應顯示在我已設置顯示順序(即大於零)的位置。所有的零值應該被視爲最後的記錄。
如何爲此編寫查詢?
您可以在ORDER尋找案件表達BY子句
SELECT *
FROM TableName
ORDER BY CASE
WHEN ColName <> 0 THEN ColName
ELSE 9999
END
Order by
case when `field` > 0 then `field` end ASC
, `field`
, other columns
使用CASE表達式忽略默認值。