Tất cả các tuyến bay từ Vienna
Trước đó, bạn đã xem cấu trúc của dữ liệu chuyến bay và xác định được các trường cần thiết từ bảng flightPlan. Chúng sẽ được dùng trong bài này cho phần truy vấn mỏ neo (anchor) và truy vấn đệ quy.
Mục tiêu của bài tập là kết hợp các kiến thức này để tạo một truy vấn đệ quy có thể:
- lấy tất cả các chuyến bay khả dụng từ
Vienna - có
travel costdưới500Euro - có ít hơn
5điểm dừng (stops)
Bạn chỉ cần xuất ra điểm đến và chi phí tương ứng!
Bài tập này là một phần của khóa học
Truy vấn phân cấp và đệ quy trong SQL Server
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
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;