Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Substituir o padrão alfabético ORDER BY por uma UNION de 2+ tabelas?


Mão única
SELECT *,1 as SortOrder FROM table1  
UNION
SELECT *,2 FROM table2  
UNION
SELECT *,3 FROM table3  
UNION
SELECT *,4 FROM table4
order by SortOrder 

o que acontece é que você está usando UNION, o sql server então torna o conjunto de resultados distinto, para isso ele precisa ordenar as tabelas

O UNION ALL faça a diferença?