【发布时间】:2012-07-31 20:31:29
【问题描述】:
我尝试创建有序的#Temp 表:
WITH Ordered AS (
SELECT ROW_NUMBER() OVER (ORDER BY [Quality] DESC) AS RowNumber, ImageID, Quality, Border, IsBest
FROM [CatalogImages].[dbo].[Images] ORDER BY Quality)
SELECT *
INTO #Temp
FROM Ordered ;
SELECT * FROM #Temp ;
但我得到错误:
消息 1033,第 15 级,状态 1,第 82 行
ORDER BY 子句无效 在视图、内联函数、派生表、子查询和公共 表表达式,除非还指定了 TOP 或 FOR XML。
如何创建有序临时表?
【问题讨论】:
-
谷歌这条消息。这是一个众所周知的错误。
-
哦,谢谢,我找到了解决方案stackoverflow.com/questions/985921/…
-
附带说明:您不能拥有 ordered 表 - 临时或非临时表。当您从 SQL 中的表中选择时,除非您明确指定
ORDER BY- 没有保证顺序
标签: sql sql-server tsql