Сегодня мне нужно написать запрос для базы данных рейсов для школы.Но сейчас я застрял, потому что я не знаю, как продолжать это.Мне нужно выбрать авиакомпании, которые выполнили 1000 или более рейсов.Из-за того, как мы структурировали базу данных, мне пришлось бы сделать это следующим образом:
SELECT DISTINCT a.nombre,
a.codigo,
count
(
select distinct o.salida_prevista,
o.fecha,
o.identificador
FROM operacion o
WHERE EXISTS
(
SELECT DISTINCT v.identificador,
v.codigo_aerolinea
FROM vuelo v
WHERE v.identificador = o.identificador
AND v.codigo_aerolinea = a.codigo)) AS numflights
FROM aerolinea a
WHERE numflights > 1000;
Но я не могу заставить СЧЕТ работать, он просто выдаст мне синтаксическую ошибку.Как я могу заставить эту РАБОТУ работать?Заранее спасибо!:) РЕДАКТИРОВАТЬ: создание таблиц
CREATE TABLE Aerolinea (
codigo_aerolinea VARCHAR(10) CONSTRAINT PK_Aerolinea PRIMARY KEY,
nombre VARCHAR(75) CONSTRAINT NN_nombre_aerolinea NOT NULL);
CREATE TABLE Vuelo (
identificador NUMBER CONSTRAINT PK_Vuelo PRIMARY KEY,
IATA_origen VARCHAR(6),
IATA_destino VARCHAR(6),
codigo_aerolinea VARCHAR(10),
codigo VARCHAR(6) CONSTRAINT NN_codigo_vuelo NOT NULL,
CONSTRAINT FK_IATA_origen FOREIGN KEY (IATA_origen) REFERENCES Aeropuerto(IATA)
ON DELETE CASCADE,
CONSTRAINT FK_IATA_destino FOREIGN KEY (IATA_destino) REFERENCES Aeropuerto(IATA)
ON DELETE CASCADE,
CONSTRAINT FK_codigo_aerolinea FOREIGN KEY (codigo_aerolinea) REFERENCES Aerolinea(codigo)
ON DELETE CASCADE);
CREATE TABLE Operacion(
identificador NUMBER,
fecha DATE CONSTRAINT NN_fecha NOT NULL,
salida_prevista NUMBER,
salida_real NUMBER,
llegada_prevista NUMBER CONSTRAINT NN_llegada_prevista NOT NULL,
llegada_real NUMBER,
numero_cola VARCHAR(6),
CONSTRAINT PK_Operacion PRIMARY KEY (salida_prevista, fecha, identificador),
CONSTRAINT FK_op_vuelo FOREIGN KEY (identificador) REFERENCES Vuelo(identificador)
ON DELETE CASCADE,
CONSTRAINT FK_op_numero_cola FOREIGN KEY(numero_cola) REFERENCES Nave(numero_cola)
ON DELETE CASCADE);