通过以下查询,我正在创建一个新表。
select * from TableA, tableB, (another query to make new table)TableC
where condition
这使我的查询看起来很长很糟糕。我不知道是否有办法让临时表稍后查询。
例如基于以上查询:
tableC = another query to make new table
select * from tableA, tableB, tableC
where condition
答案 0 :(得分:3)
CTE是一种方法
With TableC as
( SELECT ....
)
SELECT * from tableA, tableB, tableC
WHERE condition
答案 1 :(得分:1)
您有两种选择:
答案 2 :(得分:1)
如果是我,我会使用临时表来进行查询。
你可以做这样的事情;
SELECT TA.*, TB.*
INTO #TempTable
FROM TableA AS TA INNER JOIN TableB AS TB ON TA.ID = TB.ID
WHERE ......
然后您可以将此表的详细信息用于任何目的;
SELECT *
FROM #TempTable
请记住,最后DROP
是最好的做法。
DROP TABLE #TempTable