1. ホーム
  2. sql

[解決済み】Common Table ExpressionsのネストされたWITH句を作成することは可能ですか?

2022-04-19 16:19:48

質問

WITH y AS (
    WITH x AS (
        SELECT * FROM MyTable
    )
    SELECT * FROM x
)
SELECT * FROM y

このようなものはうまくいくのでしょうか?さっき試したんですが、うまくいきませんでした。

どのように解決するのですか?

厳密にはネストされていませんが、共通のテーブル式を使用することで、前のクエリを次のクエリで再利用することができます。

これを実現するために、求める文の形式は次のようになります。

WITH x AS 
(
    SELECT * FROM MyTable
), 
y AS 
(
    SELECT * FROM x
)
SELECT * FROM y