Oracle - SUBQUERY
정의) - 스칼라 서브 쿼리는 쿼리 수식으로부터 유도된 스칼라 값을 지정하기 위해 사용됩니다. - Oracle8i 에서는 다음과 같이 제한된 경우에만 지원이 되었습니다. . 삽입 문장의 VALUES 리스트 . 데이터 형 생성자에 대한 인자 - Oracle9i에서 스칼라 서브 쿼리는 유효한 수식이 쓰일 수 있는 모든 곳에서 사용될 수 있습니다. - 스칼라 서브 쿼리는 오직 하나의 값만 반환합니다. - 반환되는 값의 데이터 형은 서브 쿼리에서 선택되는 데이터 형과 일치합니다.
사용) - GROUP BY를 제외한 모든 SELECT 절 - INSERT 문의 VALUES 절 - UPDATE 문의 SET 절 및 WHERE 절 - DECODE 및 CASE의 조건 내지 수식 | |
SELECT employee_id, last_name, ( SELECT department_name FROM departments d WHERE e.department_id = d.department_id ) department_name FROM employees e ORDER BY department;
| |
SELECT employee_id, last_name FROM employees e WHERE ((SELECT location_id FROM departments d WHERE e.department_id = d.department_id) = (SELECT location_id FROM locations l WHERE STATE_province = 'California') ); | |
SELECT employee_id, last_name FROM employees e ORDER BY ( SELECT department_name FROM departments d WHERE e.department_id = d.department_id ); | |
SELECT employee_id, last_name, (CASE WHEN department_id IN (SELECT department_id FROM departments WHERE location_id = 1800) THEN 'Canada' ELSE 'other' END) location FROM employees; | |
SELECT last_name, SUBSTR ( (SELECT department_name FROM departments d WHERE d.department_id = e.department_id), 1, 10) department FROM employees e; | |
'(DB) Oracle > SQL' 카테고리의 다른 글
Oracle - 조직 TREE SQL 1 (0) | 2017.01.18 |
---|---|
Oracle - SQL문에서_한글검색_방법 (0) | 2017.01.18 |
Oracle - 예제_FOR_UPDATE_WAIT (0) | 2017.01.18 |
Oracle - 예제_CASE_예제1 (0) | 2017.01.18 |
Oracle - 예제_JOIN (0) | 2017.01.18 |