SQL WHILEループの使い方:基本構文とサンプルコード

SQLでは、他のプログラミング言語のwhileループ文のような構造はありません。しかし、再帰クエリを使用してwhileループの機能を模倣することができます。これは、WITH句と再帰クエリを使用して行うことができます。以下は、再帰クエリを使用してwhileループを模倣する方法を示す簡単な例です。

WITH RECURSIVE my_recursive_cte AS (
    SELECT 1 AS i
    UNION ALL
    SELECT i + 1
    FROM my_recursive_cte
    WHERE i < 10
)
SELECT *
FROM my_recursive_cte;

この例では、1から10までの数字のシーケンスを生成するために再帰クエリを使用しています。まず、再帰共通テーブル式(CTE)を定義し、開始値を1にします。その後、再帰ステップで現在の値に1を加え、条件として i が10未満であることを制限します。最後に、この再帰CTEをクエリして、1から10までの整数のシーケンスを取得します。

一般的に言って、SQL には組み込みの while ループ文はありませんが、再帰検索を使って同様の機能を模倣することができます。

bannerAds