【发布时间】:2011-07-06 19:08:26
【问题描述】:
您好,如果此问题的答案在其他地方,我深表歉意。我环顾四周,找不到简单的解决方案。我有一个要运行的查询。我不关心联合集的顺序,只关心内部查询返回正确的数据,即“最大区域”。
(SELECT TOP 5 * FROM [geo].[Areas] WHERE CountryID = @CountryID AND (TypeID = 'City')
ORDER BY [ShapeArea] DESC) as BiggestCities
UNION ALL
(SELECT TOP 5 * FROM [geo].[Areas] WHERE CountryID = @CountryID AND (TypeID = 'National park')
ORDER BY [ShapeArea] DESC) as BiggestParks
但是 T-sql 不会让我在子查询上使用 ORDER BY,只能在整个联合上使用......感谢您的帮助!我真的希望不必创建临时表或类似的东西。
【问题讨论】:
标签: sql sql-server tsql sql-server-2008