ORDER BY with a UNION of disparate datasets (T-SQL)

后端 未结 4 2024
无人共我
无人共我 2021-02-19 04:41

I have a query that UNION\'s two somewhat similar datasets, but they both have some columns that are not present in the other (i.e., the columns have NULL values in

4条回答
  •  时光说笑
    2021-02-19 05:13

    Off the top of my head i would say the worst case scenario is you create a temporary table with all the fields do an INSERT INTO the temp table from both T1 & T2 then SELECT from the temp table with an order by.

    ie. Create a temp table (eg. #temp) with fields Id, Cat, Price, Name, Abbrv, and then:

    SELECT Id, Cat, Price, null, null INTO #temp FROM T1
    SELECT Id, null, null, Name, Abbrv INTO #temp FROM T2
    SELECT * FROM #temp ORDER BY Id, Price DESC, Abbrv ASC
    

    NB: I'm not 100% sure on the null syntax from the inserts but i think it will work.

    EDIT: Added ordering by Price & Abbrv after id... if Id doesn't link T1 & T2 then what does?

提交回复
热议问题