比方說,我有這樣的MySQL查詢:訂單按字段等於特定值?
SELECT * FROM A WHERE x='abc' OR y=0;
我怎樣才能行的優先級,以便在那裏x='abc'
是有序的第一批案件?如果y=0
但是x!='abc'
,我希望那些行在x='abc'
之後出現。
這可以用一個簡單的ORDER BY子句來完成嗎?
謝謝!
比方說,我有這樣的MySQL查詢:訂單按字段等於特定值?
SELECT * FROM A WHERE x='abc' OR y=0;
我怎樣才能行的優先級,以便在那裏x='abc'
是有序的第一批案件?如果y=0
但是x!='abc'
,我希望那些行在x='abc'
之後出現。
這可以用一個簡單的ORDER BY子句來完成嗎?
謝謝!
SELECT *
FROM A
WHERE x='abc'
OR y=0
order by case when x='abc' then 0 else 1 end;
我會用一個case語句做到這一點:
SELECT *,
CASE WHEN column_one = 0 THEN 0
WHEN column_two = 'ADMIN' THEN 1
END AS multi_column
FROM sometable
ORDER BY multi_column;
ORDER BY FIELD(x,'abc',x)