我在MySQL運行像下面的SQL查詢:如何在if語句中按順序使用列相對位置?
select *
from (
select 2 as o,1 as t from dual
union
select 1 as o,2 as t from dual
) x
order by if((select 1),o,t);
它運作良好,但是當我使用if
聲明中列的相對位置,這是行不通的。
如何使用if
中ORDER BY
語句中的列相對位置?
select *
from (
select 2 as o,1 as t from dual
union
select 1 as o,2 as t from dual
) x
order by if((select 0),1,2);
將**'SQL' **放入**'HTML' **代碼片段中將不會運行它。我會爲你糾正它。 –
您可以添加輸入和預期輸出以幫助更好地理解問題嗎? – Sangharsh
當記錄來自聯合的第一個查詢時,是否希望使用列「t」進行排序,而當它來自第二個查詢時,是否使用「o」? – collapsar