SQL-Server/Access - 按顺序1,2?

Suj*_*ran 11 sql-server sql-order-by

我今天遇到了一个问题,

SELECT col1,'yes' as col2  FROM myTable  
   WHERE col2=TRUE  
UNION  
SELECT col1,'no' as col2 FROM mytable  
   WHERE col2=FALSE  
ORDER BY 1,2  
Run Code Online (Sandbox Code Playgroud)

我认为它将按第一列排序然后第二列,但由于涉及UNION,我有点不确定是否有人可以解释此查询的确切含义

Ste*_*rea 13

SQL Server将结果合并在一起(这是一个隐含的select distinct),然后按col1然后col2排序结果.在联合查询中,您可以在最终选择上放置ORDER BY,它将对最终结果进行排序.