私は、同じWITHステートメント内に、通常のテーブル式と再帰式の両方を持つことを試みています。再帰的なものとして、通常のテーブル式を最初に持っていたい普通のものに依存します。私がこれをしようとしているとき、それはちょうどうまくいきません。再帰的なテーブル式を最初に動作させることができます。SQLite:WITH句内に普通のテーブル式の後に再帰式テーブル式を置くことはできますか?
SQLFiddleで、次の場合は、問題を示していますhttp://sqlfiddle.com/#!5/b5362/3063/0
次のコードは正常に動作します:
WITH RECURSIVE dates(x) AS (
SELECT datetime('2015-01-01')
UNION ALL
SELECT datetime(x, '+1 MONTHS') FROM dates WHERE x<'2016-01-01'
)
,
testi AS (select * from supportContacts
order by id desc)
SELECT *
FROM dates;
しかし、私は、再帰table文で始まるとき、それは動作しません、次のコード、すなわち、動作しません。
WITH testi AS (select * from supportContacts
order by id desc)
,
RECURSIVE dates(x) AS (
SELECT datetime('2015-01-01')
UNION ALL
SELECT datetime(x, '+1 MONTHS') FROM dates WHERE x<'2016-01-01'
)
SELECT *
FROM dates;
最初、私はそれを行うだろうか、その場合には、再帰的なテーブルステートメントを持つことが可能であるならば、誰かが私に言うことができる場合、私は非常に幸せになります。あなたが単語RECURSIVE
を使用している場合//アンリ
はありがとうございました!あなたの答えに続いて、私はRECURSIVEという言葉を削除し、今まで働かなかったコードを削除しました。 –