Código SQL copiado para a área de transferência
Aprimore suas habilidades em SQL com nossos exercícios interativos!
Pratique uma ampla gama de tarefas SQL, desde consultas básicas até técnicas avançadas. Receba feedback instantâneo sobre suas soluções, ajudando você a aprender com os erros e melhorar suas habilidades. Aumente sua confiança para entrevistas de emprego e aplicações SQL do mundo real.
Tarefa  40:
Obtenha uma lista de aeroportos que têm mais de um voo direto entre eles (com diferentes flight_no).
Exiba uma tabela com as colunas departure_airport_code, arrival_airport_code, flights_count e flight_numbers - array ordenado de números de voo.
Ordene os resultados por número decrescente de voos, depois por códigos de aeroporto de partida e chegada em ordem crescente.

Escreva sua solicitação no campo abaixo e clique no botão "Verificar!"

Para escrever a resposta, use a sintaxe PostgreSQL. As descrições das tabelas estão no painel à direita.

Explore mais de 280 tarefas diversas na nossa plataforma.

Faça login para salvar seu progresso.

Banco de Dados Bookings (PostgreSQL)

A área de assunto deste banco de dados é voos de companhias aéreas através de vários aeroportos.

Diagrama ER do banco de dados Bookings

O Banco de Dados Bookings contém 8 tabelas:

  • aircrafts_data - tabela de aeronaves.
  • airports_data - tabela de aeroportos.
  • boarding_passes - tabela de cartões de embarque.
  • bookings - tabela de reservas.
  • flights - tabela de voos.
  • seats - tabela de assentos de aeronaves.
  • ticket_flights - tabela de relações entre bilhetes e voos.
  • tickets - tabela de bilhetes.
Introdução à Linguagem SQL: Abordagem prática para iniciantes
Introdução à Linguagem SQL: Abordagem prática para iniciantes
Atualmente as empresas estão coletando dados a taxas exponenciais e mesmo assim poucas pessoas sabem como acessá-los de maneira relevante. Se você trabalha em uma empresa ou é profissional de TI, este curto guia prático lhe ensinará como obter e transformar dados com o SQL de maneira significativa. Você dominará rapidamente os aspectos básicos do SQL e aprenderá como criar seus próprios bancos de dados. O autor Thomas Nield fornece exercícios no decorrer de todo o livro para ajudá-lo a praticar em casa suas recém descobertas aptidões no uso do SQL, sem precisar empregar um ambiente de servidor de banco de dados. Além de aprender a usar instruções-chave do SQL para encontrar e manipular seus dados, você descobrirá como projetar e gerenciar eficientemente bancos de dados que atendam às suas necessidades.

Tabela aircrafts_data

Colunas da tabela:
  • aircraft_code - Código único para cada aeronave.
  • model - Nome do modelo da aeronave em inglês e russo no formato JSON.
  • range - Alcance de voo da aeronave em quilômetros.
Índices:
  • CHAVE PRIMÁRIA, btree (aircraft_code)
aircraft_codemodelrange
1773{"en": "Boeing 777-300", "ru": "Боинг 777-300"}11100

Tabela airports_data

Colunas da tabela:
  • airport_code - Código único para cada aeroporto.
  • airport_name - Nome do aeroporto em inglês e russo no formato JSON.
  • city - Cidade do aeroporto em inglês e russo no formato JSON.
  • coordinates - Coordenadas do aeroporto como POINT(longitude, latitude).
  • timezone - Nome do fuso horário do aeroporto.
airport_codeairport_namecitycoordinatestimezone
1YKS{"en": "Yakutsk Airport", "ru": "Якутск"}{"en": "Yakutsk", "ru": "Якутск"}(129.77099609375,62.0932998657227)Asia/Yakutsk
Índices:
  • CHAVE PRIMÁRIA, btree (airport_code)

Tabela boarding_passes

Colunas da tabela:
  • ticket_no - Número do bilhete.
  • flight_id - Identificador do voo.
  • boarding_no - Número do cartão de embarque.
  • seat_no - Número do assento.
ticket_noflight_idboarding_noseat_no
100054352123513062512D
Índices:
  • CHAVE PRIMÁRIA, btree (ticket_no, flight_id)
  • RESTRIÇÃO ÚNICA, btree (flight_id, boarding_no)
  • RESTRIÇÃO ÚNICA, btree (flight_id, seat_no)
Restrições de chave estrangeira:
  • CHAVE ESTRANGEIRA (ticket_no, flight_id) REFERÊNCIAS ticket_flights(ticket_no, flight_id)

Tabela bookings

Colunas da tabela:
  • book_ref - Número da reserva.
  • book_date - Data da reserva.
  • total_amount - Custo total da reserva.
book_refbook_datetotal_amount
100000F2017-07-05 00:12:00+00265700.00
Índices:
  • CHAVE PRIMÁRIA, btree (book_ref)

Tabela flights

Colunas da tabela:
  • flight_id - ID do voo.
  • flight_no - Número do voo.
  • scheduled_departure - Horário programado de partida.
  • scheduled_arrival - Horário programado de chegada.
  • departure_airport - Aeroporto de partida.
  • arrival_airport - Aeroporto de chegada.
  • status - Status do voo.
  • aircraft_code - Código da aeronave, IATA.
  • actual_departure - Horário real de partida.
  • actual_arrival - Horário real de chegada.
flight_id flight_no scheduled_departure scheduled_arrival departure_airport arrival_airport status aircraft_code actual_departure actual_arrival
11185PG01342017-09-10 06:50:00+002017-09-10 11:55:00+00DMEBTKScheduled319
Índices:
  • CHAVE PRIMÁRIA, btree (flight_id)
  • RESTRIÇÃO ÚNICA, btree (flight_no, scheduled_departure)

Tabela seats

Colunas da tabela:
  • aircraft_code - Código da aeronave, IATA.
  • seat_no - Número do assento.
  • fare_conditions - Classe de viagem.
aircraft_codeseat_nofare_conditions
13192ABusiness
Índices:
  • CHAVE PRIMÁRIA, btree (aircraft_code, seat_no)
Restrições de chave estrangeira:
  • CHAVE ESTRANGEIRA (aircraft_code) REFERÊNCIAS aircrafts(aircraft_code) ON DELETE CASCADE

Tabela ticket_flights

Colunas da tabela:
  • ticket_no - Número do bilhete.
  • flight_id - ID do voo.
  • fare_conditions - Classe de viagem.
  • amount - Custo da viagem.
ticket_no flight_id fare_conditions amount
1000543215977630625Business42100.00
Índices:
  • CHAVE PRIMÁRIA, btree (ticket_no, flight_id)
Restrições de chave estrangeira:
  • CHAVE ESTRANGEIRA (flight_id) REFERÊNCIAS flights(flight_id)
  • CHAVE ESTRANGEIRA (ticket_no) REFERÊNCIAS tickets(ticket_no)

Tabela tickets

Colunas da tabela:
  • ticket_no - Número do bilhete.
  • book_ref - Número da reserva.
  • passenger_id - ID do passageiro.
  • passenger_name - Nome do passageiro.
  • contact_data - Informações de contato do passageiro.
ticket_no book_ref passenger_id passenger_name contact_data
1000543200098706B0468149 604011VALERIY TIKHONOV{"phone": "+70127117011"}
Índices:
  • CHAVE PRIMÁRIA, btree (ticket_no)
Restrições de chave estrangeira:
  • CHAVE ESTRANGEIRA (book_ref) REFERÊNCIAS bookings(book_ref)