最近在寫sql的時候出現了一個排序的問題 因爲用到了union連接2張表的數據 分別在表1和表2都用到了order by 數據如下:
表1是有數據的:
然後表2的數據沒有數據 :
最後union合併了之後的查詢結果:
排序出現了問題 因爲sql的執行順序是先order by 然後union再拼下一張表的數據,所以最後把2條sql用一個大括號包起來 select (表1的數據 union 表2的數據)t order by t.update_time 這樣就可以解決這個問題了。
最近在寫sql的時候出現了一個排序的問題 因爲用到了union連接2張表的數據 分別在表1和表2都用到了order by 數據如下:
表1是有數據的:
然後表2的數據沒有數據 :
最後union合併了之後的查詢結果:
排序出現了問題 因爲sql的執行順序是先order by 然後union再拼下一張表的數據,所以最後把2條sql用一個大括號包起來 select (表1的數據 union 表2的數據)t order by t.update_time 這樣就可以解決這個問題了。