【发布时间】:2014-11-03 17:58:37
【问题描述】:
我有一个有效的复杂 SQL 查询。好像
SELECT * FROM Site s
JOIN (
SELECT DISTINCT z.Value FROM Doc z
JOIN (
SELECT x.DocumentID FROM Doc x
JOIN (
SELECT DocumentID, MAX(VERSION) AS VERSION
FROM Doc GROUP BY DocumentID) y ON y.DocumentID = x.DocumentID
WHERE DocumentTypeID = 78 AND MetadataTypeID = 22 AND VALUE > GETDATE() AND y.Version = x.Version
) a ON z.DocumentID = a.DocumentID
WHERE MetadataTypeID = 2
) b ON b.Value = s.SiteID
WHERE SiteID > 0
它做我想做的事。但是当我把它包装在
SELECT * INTO #Temp FROM ()
我在 ')' 附近得到一个不正确的语法。
我很困惑。我只是想把结果放到一个临时表中,这样我就可以做进一步的工作了。为什么它不起作用?
【问题讨论】:
-
使用别名
SELECT * INTO #Temp FROM () AS A -
试试
SELECT * INTO #Temp FROM () AS a -
不错。感谢你们的快速回答。
标签: sql sql-server temp