-- 1. Π‘ΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠΌΠΌΠ°ΡΠ½ΠΎ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠΈΠΏ ΡΠ°ΠΌΠΎΠ»ΡΡΠ° ΠΏΡΠΎΠ²ΡΠ» Π² Π²ΠΎΠ·Π΄ΡΡ Π΅, Π΅ΡΠ»ΠΈ Π±ΡΠ°ΡΡ Π·Π°Π²Π΅ΡΡΡΠ½Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅Π»Π΅ΡΡ.
SELECT -- ΠΡΠ΅ΠΌΠ½Ρ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ΅ Π² Π²ΠΎΠ·Π΄ΡΡ Π΅
a.model "ΠΠΎΠ΄Π΅Π»Ρ_ΡΠ°ΠΌΠΎΠ»Π΅ΡΠ°",
SUM(f.actual_arrival - f.actual_departure) "Π_Π²ΠΎΠ·Π΄ΡΡ Π΅_ΡΠ°ΡΠΎΠ²"
FROM bookings.aircrafts a
JOIN bookings.flights f ON f.aircraft_code = a.aircraft_code
WHERE f.status = 'Arrived'
GROUP BY a.model
ORDER BY Π_Π²ΠΎΠ·Π΄ΡΡ Π΅_ΡΠ°ΡΠΎΠ² DESC;
-- 2. Π‘ΠΊΠΎΠ»ΡΠΊΠΎ Π±ΡΠ»ΠΎ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΎ ΠΏΠΎΡΠ°Π΄ΠΎΡΠ½ΡΡ ΡΠ°Π»ΠΎΠ½ΠΎΠ² ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π±ΡΠΎΠ½ΠΈ
SELECT COUNT(bp.boarding_no) as boarded_count
FROM bookings.boarding_passes bp
JOIN bookings.tickets t ON t.ticket_no = bp.ticket_no
JOIN bookings.bookings b ON b.book_ref = t.book_ref
WHERE b.book_ref = t.book_ref
GROUP BY bp.boarding_no;
-- ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ
SELECT COUNT(bp.boarding_no) as boarded_count
FROM bookings.boarding_passes bp
JOIN bookings.flights f ON f.flight_id = bp.flight_id
WHERE f.actual_departure IS NOT NULL
GROUP BY bp.boarding_no;
-- 3. ΠΡΠ²Π΅ΡΡΠΈ ΠΎΠ±ΡΡΡ ΡΡΠΌΠΌΡ ΠΏΡΠΎΠ΄Π°ΠΆ ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ ΠΊΠ»Π°ΡΡΡ Π±ΠΈΠ»Π΅ΡΠΎΠ²
SELECT tf.fare_conditions AS "ΠΠ»Π°ΡΡ",
SUM(amount) AS "Π‘ΡΠΌΠΌΠ°"
FROM bookings.ticket_flights AS tf
GROUP BY tf.fare_conditions
ORDER BY Π‘ΡΠΌΠΌΠ° DESC;
-- 4. ΠΠ°ΠΉΡΠΈ ΠΌΠ°ΡΡΡΡΡ Ρ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠΈΠΌ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΡΠΌ ΠΎΠ±ΠΎΡΠΎΡΠΎΠΌ
-- 5. ΠΠ°ΠΉΡΠΈ Π½Π°ΠΈΠ»ΡΡΡΠΈΠΉ ΠΈ Π½Π°ΠΈΡ ΡΠ΄ΡΠΈΠΉ ΠΌΠ΅ΡΡΡΡ ΠΏΠΎ Π±ΡΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π±ΠΈΠ»Π΅ΡΠΎΠ² (ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈ ΡΡΠΌΠΌΠ°)
-- 6. ΠΠ΅ΠΆΠ΄Ρ ΠΊΠ°ΠΊΠΈΠΌΠΈ Π³ΠΎΡΠΎΠ΄Π°ΠΌΠΈ ΠΏΠ°ΡΡΠ°ΠΆΠΈΡΡ Π΄Π΅Π»Π°Π»ΠΈ ΠΏΠ΅ΡΠ΅ΡΠ°Π΄ΠΊΠΈ?
-- ΠΠ΅ΡΠ΅ΡΠ°Π΄ΠΊΠΎΠΉ ΡΡΠΈΡΠ°Π΅ΡΡΡ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΠ°ΡΡΠ°ΠΆΠΈΡΠ° Π² ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΠΎΠΌ Π°ΡΡΠΎΠΏΠΎΡΡΡ ΠΌΠ΅Π½Π΅Π΅ 24 ΡΠ°ΡΠΎΠ²
select * from bookings.tickets;
select * from bookings.aircrafts;
select * from bookings.flights;
select * from bookings.boarding_passes;
select * from bookings.bookings;
select * from bookings.ticket_flights;