这应该工作:
SELECt * FROM (SELECt TOP 10 A.*, 0 AS Ordinal FROM A ORDER BY [Price]) AS A1UNIOn ALLSELECt * FROM (SELECt TOP 3 A.*, 1 AS Ordinal FROM A ORDER BY [Name]) AS A2ORDER BY Ordinal
从 MSDN :
在使用UNIOn,EXCEPT或INTERSECT运算符的查询中,仅在语句末尾才允许使用ORDER BY。仅当您在顶级查询中 而不是子查询中
指定UNIOn,EXCEPT和INTERSECT时,此限制才适用。
编辑 :强制您需要将顺序应用于
ORDER BY外部查询的顺序。我已经向两个查询添加了一个常量值列。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)