2
id a b
--------------
1 5 1
2 2 3
3 4 2
4 3 6
5 0 1
6 2 2
我想通過max(a,b)
降序來訂購吧,這樣的結果將是:
id a b
--------------
4 3 6
1 5 1
3 4 2
2 2 3
6 2 2
5 0 1
會是怎樣的SQL查詢來執行這樣的排序?
id a b
--------------
1 5 1
2 2 3
3 4 2
4 3 6
5 0 1
6 2 2
我想通過max(a,b)
降序來訂購吧,這樣的結果將是:
id a b
--------------
4 3 6
1 5 1
3 4 2
2 2 3
6 2 2
5 0 1
會是怎樣的SQL查詢來執行這樣的排序?
使用GREATEST:
SELECT *
FROM table
ORDER BY GREATEST(a, b) DESC
開門見山!謝謝:) –
請注意兩個值必須不爲空。例如:select maximum(null,3)返回null。在這種情況下,你將不得不使用coalesce。選擇最大的(coalesce(null,0),coalesce(null,0))這將返回0. –
@nick rulez:啊! mysql ...你想知道爲什麼當它非常不合理時使用它。感謝你提到它,+1 –