0
ORDER BY CASE WHEN DATE_FORMAT(CURDATE(),'%w') = 0 THEN 'day DESC' ELSE 'day ASC' END, orderby ASC
案例的目的是通過忽略
很簡單的查詢,總是排序一天,如果今天是星期天則降序排序,如果不是那麼升序排列。但它總是被忽略,只能根據orderby
字段排序。
ORDER BY CASE WHEN DATE_FORMAT(CURDATE(),'%w') = 0 THEN 'day DESC' ELSE 'day ASC' END, orderby ASC
案例的目的是通過忽略
很簡單的查詢,總是排序一天,如果今天是星期天則降序排序,如果不是那麼升序排列。但它總是被忽略,只能根據orderby
字段排序。
你想要的東西,如:
ORDER BY
CASE
WHEN DATE_FORMAT(CURDATE(),'%w') = 0
THEN `day`
END DESC,
CASE
WHEN DATE_FORMAT(CURDATE(),'%w') <> 0
THEN `day`
END ASC,
`orderby` ASC
你就錯了。您不能在語句內指定排序方向。 – Kermit