用于临时表创建的WITH和INTO之间的区别

时间:2015-03-23 17:18:15

标签: sql sql-server tsql common-table-expression

WITHINTO似乎非常相似。两者都创建临时表。他们有什么区别?

1 个答案:

答案 0 :(得分:5)

WITH没有创建临时表。它允许您为子查询指定名称,然后在实际查询中引用它们,就好像它们是表或视图一样。它允许您以一种方式对查询进行逐步优化,否则需要一系列已定义的表变量/临时表或可疑的嵌套子查询。

考虑它的一种方法是预先定义子查询,然后按名称引用它们,而不是将查询表达式放在最终查询中。

另一方面,

SELECT INTO只是根据SELECT的结果创建一个表格。