我今天遇到了一个问题,
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
我认为它会按第一列排序然后第二列,但由于涉及UNION,我有点不确定是否有人可以解释此查询的确切含义
答案 0 :(得分:13)
SQL Server将结果合并在一起(这是一个隐含的select distinct),然后按col1然后col2排序结果。在联合查询中,您可以在最终选择上放置ORDER BY,它将对最终结果进行排序。