각 도시의 최저 임금 직원의 성을 표시하려고합니다. 도시 열은 LOCATIONS라는 제목 아래 직원 정보 (급여, 성)가 EMPLOYEES에 속합니다. 이 두 테이블은 공통 테이블이 아니므로 세 번째 테이블에 의존해야합니다. DEPARTMENTS에는 DEPARTMENTS에 EMPLOYEES와 LOCATIONS와 공유하는 department_id가 포함되어 있으며 LOCATION_ID와 LOCATION_ID가 공유됩니다. 이것은 내가 지금까지 가지고있는 것이지만 나는 과거에 거의 두 테이블 만 가지고 일한 것처럼 이것에 문제가있다.3 개의 테이블을 사용하는 하위 쿼리 SQL
SELECT LAST_NAME
FROM EMPLOYEES
WHERE (DEPARTMENT_ID) IN
(SELECT DEPARTMENT_ID
FROM DEPARTMENTS
WHERE LOCATION_ID IN
(SELECT LOCATION_ID
FROM LOCATIONS
GROUP BY CITY
HAVING MIN(SALARY)));
MINIMUM_SALARIES의 조인은 별칭이 사용되므로 "LOWEST_SALARY"에 있어야합니다. –
모든 대문자는 Oracle에서 슬프게도 표준입니다. – Twelfth
이것은 또한 'Department_ID'에 의해 그룹화되기 때문에 도시별로 배수가 가장 낮은 배수를 반환 할 수 있습니다. 즉, 동일한 도시에서 출퇴근 도시 최저 임금과 동일한 여러 직원을받을 수 있습니다. 하위 쿼리에서 'Department_ID'를 삭제하고 외부의 도시 테이블에 가입하십시오. –