我希望基於從另一個表順序查詢的值ASC或DESC。MySQL ORDER BY取決於CASE order ASC或DESC
因此,像這樣:
SELECT *
FROM table
ORDER BY
CASE (SELECT sorting from table2 WHERE table2.id = ?)
WHEN 1 THEN table.date ASC END
WHEN 0 THEN table.date DESC END
END
是類似的東西可以在MySQL?
我已經看到了MS-SQL Server的一些解決方案:how to order 2 SQL Fields in asc and desc dynamically
編輯:我剛纔看到我在描述犯了一個錯誤,固定。
這是不正確的。這個人想要按不同的領域排序不同的tabel。從問題中可以看出,字段排序的值僅爲0或1,因此通過排序或排序進行排序是無用的 –
這實際上有效!我可以轉換日期,沒問題。 – Sam
不,該字段的值實際上是* date *值,而不是0或1,所以這種技術可能很有用。 +1即可享受創意,開箱即用的選擇。 –