ウィーン発のすべてのフライトルート
これまでに、フライトデータの構造を確認し、flightPlan テーブルから必要なフィールドを特定しました。今回の演習では、それらをアンカー部と再帰部のクエリで使用します。
この演習のゴールは、次の条件を満たす再帰クエリを作成することです。
Vienna発の可能なすべてのフライトを取得するtravel costが500ユーロ未満である- 乗り継ぎ回数が
5未満である
出力は到着地とその合計コストのみを表示してください。
この演習はコースの一部です
SQL Server における階層型クエリと再帰クエリ
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
WITH flight_route (Departure, Arrival, stops) AS(
SELECT
f.Departure, f.Arrival,
-- Initialize the number of stops
___
FROM flightPlan f
WHERE Departure = 'Vienna'
UNION ALL
SELECT
p.Departure, f.Arrival,
-- Increment the number of stops
p.stops + ___
FROM flightPlan f, flight_route p
-- Limit the number of stops
WHERE p.Arrival = f.Departure AND
p.stops < ___)
SELECT
DISTINCT Arrival,
Departure,
stops
FROM flight_route;