Base de Datos de Reservas: estructura de tabla y visión general del esquema
La base de datos de Reservas (PostgreSQL) modela vuelos de aerolíneas a través de múltiples aeropuertos y se utiliza ampliamente para la práctica de SQL.
Esta página muestra la estructura de la tabla, las columnas clave y las restricciones utilizadas en consultas SQL analíticas y transaccionales típicas.
La base de datos de Reservas contiene 8 tablas principales.
Diagrama ER de la base de datos de Reservas
La lista de tablas
aircrafts_data - tabla de aeronaves.
- aircraft_codeCódigo único para cada aeronave
- modelNombre del modelo de aeronave en inglés y ruso en formato JSON
- rangeRango de vuelo de la aeronave en kilómetros
- CLAVE PRIMARIA, btree (aircraft_code)
| aircraft_code | model | range |
|---|
| 1 | 773 | {"en": "Boeing 777-300", "ru": "Боинг 777-300"} | 11100 |
airports_data - tabla de aeropuertos.
- airport_codeCódigo único para cada aeropuerto
- airport_nameNombre del aeropuerto en inglés y ruso en formato JSON
- cityCiudad del aeropuerto en inglés y ruso en formato JSON
- coordinatesCoordenadas del aeropuerto como PUNTO(longitud, latitud)
- timezoneNombre de la zona horaria del aeropuerto
- CLAVE PRIMARIA, btree (airport_code)
| airport_code | airport_name | city | coordinates | timezone |
|---|
| 1 | YKS | {"en": "Yakutsk Airport", "ru": "Якутск"} | {"en": "Yakutsk", "ru": "Якутск"} | (129.77099609375,62.0932998657227) | Asia/Yakutsk |
boarding_passes - tabla de tarjetas de embarque.
- ticket_noNúmero de ticket
- flight_idIdentificador de vuelo
- boarding_noNúmero de tarjeta de embarque
- seat_noNúmero de asiento
- CLAVE PRIMARIA, btree (ticket_no, flight_id)
- RESTRICCIÓN ÚNICA, btree (flight_id, boarding_no)
- RESTRICCIÓN ÚNICA, btree (flight_id, seat_no)
- CLAVE FORÁNEA (ticket_no, flight_id) REFERENCIAS ticket_flights(ticket_no, flight_id)
| ticket_no | flight_id | boarding_no | seat_no |
|---|
| 1 | 0005435212351 | 30625 | 1 | 2D |
bookings - tabla de reservas.
- book_refNúmero de reserva
- book_dateFecha de reserva
- total_amountCosto total de la reserva
- CLAVE PRIMARIA, btree (book_ref)
| book_ref | book_date | total_amount |
|---|
| 1 | 00000F | 2017-07-05 00:12:00+00 | 265700.00 |
flights - tabla de vuelos.
- flight_idID de vuelo
- flight_noNúmero de vuelo
- scheduled_departureHora de salida programada
- scheduled_arrivalHora de llegada programada
- departure_airportAeropuerto de salida
- arrival_airportAeropuerto de llegada
- statusEstado del vuelo
- aircraft_codeCódigo de aeronave, IATA
- actual_departureHora de salida real
- actual_arrivalHora de llegada real
- CLAVE PRIMARIA, btree (flight_id)
- RESTRICCIÓN ÚNICA, btree (flight_no, scheduled_departure)
|
flight_id |
flight_no |
scheduled_departure |
scheduled_arrival |
departure_airport |
arrival_airport |
status |
aircraft_code |
actual_departure |
actual_arrival |
|---|
| 1 | 1185 | PG0134 | 2017-09-10 06:50:00+00 | 2017-09-10 11:55:00+00 | DME | BTK | Programado | 319 | | |
seats - tabla de asientos de aeronaves.
- aircraft_codeCódigo de aeronave, IATA
- seat_noNúmero de asiento
- fare_conditionsClase de viaje
- CLAVE PRIMARIA, btree (aircraft_code, seat_no)
- CLAVE FORÁNEA (aircraft_code) REFERENCIAS aircrafts(aircraft_code) ON DELETE CASCADE
|
aircraft_code | seat_no | fare_conditions |
| 1 | 319 | 2A | Business |
ticket_flights - relaciones de tickets a vuelos.
- ticket_noNúmero de ticket
- flight_idID de vuelo
- fare_conditionsClase de viaje
- amountCosto del viaje
- CLAVE PRIMARIA, btree (ticket_no, flight_id)
- CLAVE FORÁNEA (flight_id) REFERENCIAS flights(flight_id)
- CLAVE FORÁNEA (ticket_no) REFERENCIAS tickets(ticket_no)
|
ticket_no |
flight_id |
fare_conditions |
amount |
| 1 | 0005432159776 | 30625 | Business | 42100.00 |
tickets - tabla de tickets.
- ticket_noNúmero de ticket
- book_refNúmero de reserva
- passenger_idID de pasajero
- passenger_nameNombre del pasajero
- contact_dataInformación de contacto del pasajero
|
ticket_no |
book_ref |
passenger_id |
passenger_name |
contact_data |
| 1 | 0005432000987 | 06B046 | 8149 604011 | VALERIY TIKHONOV | {"phone": "+70127117011"} |
- CLAVE PRIMARIA, btree (ticket_no)
- CLAVE FORÁNEA (book_ref) REFERENCIAS bookings(book_ref)