0
나는이 쿼리를 수행하려고 시도했다. 스페인에있는 병원 중 2 명이 넘는 의사에게만 근무하는 병원의 이름은 무엇인가? 그러나 그 결과는 내가 기대했던 것이 아닙니다.SQL DML Oracle 쿼리
CREATE TABLE Hospital (
hid INT PRIMARY KEY,
name VARCHAR(127) UNIQUE,
country VARCHAR(127),
area INT
);
CREATE TABLE Doctor (
ic INT PRIMARY KEY,
name VARCHAR(127),
date_of_birth INT,
);
CREATE TABLE Work (
hid INT,
ic INT,
since INT,
FOREIGN KEY (hid) REFERENCES Hospital (hid),
FOREIGN KEY (ic) REFERENCES Doctor (ic),
PRIMARY KEY (hid,ic)
);
내가이 함께 노력 :
SELECT DISTINCT H.name
FROM Doctor D, Work W, Hospital H
WHERE D.bi = W.bi AND H.country = 'Spain' AND H.hid = W.hid AND W.ic = D.ic
AND NOT EXISTS(
SELECT *
FROM Hospital H2
WHERE H2.hid = W.hid
)
GROUP BY (H.name)
HAVING COUNT(D.ic) > 2
;
감사
나는이 테이블을 가지고있다.
귀하의 도움과 설명에 감사드립니다. – tomss