公用表表达式内部的where子句与外部的where子句不同吗?

问题描述 投票:0回答:0

我可以通过这两个查询获得相同的结果集:

WITH CTE AS 
(
    SELECT * 
    FROM table1 
    WHERE col1 = 1
)
SELECT * 
FROM CTE
WITH CTE AS 
(
    SELECT * 
    FROM table1 
)
SELECT * 
FROM CTE
WHERE col1 = 1

性能有区别吗?

我查看了两个执行计划,它们是相同的。

这是否意味着两个查询的工作原理完全相同?

sql sql-server common-table-expression
© www.soinside.com 2019 - 2024. All rights reserved.