2 스칼라 서브쿼리와 파생 테이블
① 스칼라 서브쿼리는 메인쿼리의 SELECT 절에 위치한 서브쿼리로, 하나의 칼럼이나 표현식 역할을 합니다.
② 스칼라 서브쿼리는 반드시 단일 로우, 단일 값을 반환해야 하며, 메인쿼리와 조인할 수 있습니다.
③ 파생 테이블은 메인쿼리의 FROM 절에 위치한 서브쿼리로, 하나의 테이블 역할을 합니다.
④ 파생 테이블의 서브쿼리는 여러 개의 로우, 여러 칼럼 값을 반환할 수 있습니다.
⑤ 파생 테이블에는 반드시 별칭을 붙여야 하고, 메인쿼리의 테이블과 조인할 수 있습니다. 일반적으로 조인 조건은 메인쿼리의 WHERE 절에 기술합니다.
⑥ 파생 테이블은 원래 서브쿼리 안에서 메인쿼리의 테이블을 참조할 수 없지만, MySQL 8.0.14 버전부터 LATERAL 키워드가 추가되어 서브쿼리 안에서 메인쿼리 테이블을 참조할 수 있습니다. 따라서 조인 조건을 서브쿼리 안에 기술할 수 있습니다.