kru*_*rul 2 sql sql-server common-table-expression
扩展以下问题(多选语句)我想知道我是否可以执行以下操作:
WITH
cte1 as (
SELECT * from cdr.Location
),
cte2 as (
SELECT * from cdr.Location
WHERE cdr.Location.someField = cte1.SomeField
)
select * from cte1 union select * from cte2
Run Code Online (Sandbox Code Playgroud)
所以这里的重点在于以下几行:
WHERE cdr.Location.someField = cte1.SomeField
Run Code Online (Sandbox Code Playgroud)
在cte2中哪里我引用cte1?
是的,您可以在随后的CTE中引用先前声明的CTE:
WITH cte1 as (
SELECT t.*
FROM cdr.Location t),
cte2 as (
SELECT t.*
FROM cdr.Location t
JOIN cte1 c1 ON c1.somefield = t.someField)
SELECT *
FROM cte1
UNION
SELECT *
FROM cte2
Run Code Online (Sandbox Code Playgroud)
笔记
顺便说一句:尝试在未来制定一个更好的例子 - 这对你和其他想要帮助你的SO社区都有好处.
| 归档时间: |
|
| 查看次数: |
3947 次 |
| 最近记录: |