2024.12.19(목) / 4일차 / 서브쿼리

2024. 12. 19. 17:38·SQL ORACLE

*서브쿼리 

- 하나의 SQL 문 안에 포함된 또 다른 SELECT 문

- 메인 SQL문을 위해 보조 역할을 하는 쿼리

 

*서브쿼리의 구분

단일행, 다중행, 다중열 등의 서브쿼리를 분류하는 기준은 결과값의 형태이다.

구체적으로 서브쿼리가 반환하는 행(가로)의 수와 열(세로)의 수를 기준으로 나눈다.

 

1. 단일행 서브쿼리

- 서브쿼리의 결과가 한 개의 행과 한 개의 열인경우, 일반적으로 비교연산자(=, <, >)와 함께 사용됨

 

서브쿼리(SELECT AVG(SALARY) FROM EMPLOYEE) 는 전체 직원의 평균 급여를 반환함.

결과는 단일 값이며, 이를 SALARY 와 비교함.

 

2. 다중행 서브쿼리

서브쿼리의 결과가 여러 행이지만, 한개의 열로 반환되는 경우, 다중행 비교 연산자(IN, ANY, ALL)과 함께 사용됨

서브쿼리 (SELECT SALARY FROM EMPLOYEE WHERE DEPT_CODE = 'IT') 는 IT 부서 직원들의 급여를 반환함

메인 쿼리는 직원들의 이름과 이름코드를 EMPLOYEE 테이블에서 가져오는데, 이때 IT 부서 직원들의 급여중 가장 큰 값을 조회함.

 

3. 다중열 서브쿼리

서브쿼리의 결과가 한 행이지만, 여러 열로 반환되는 경우, 비교연산자를 사용할때(컬럼1, 컬럼2, ...) 형태로 다중 열을 처리함

 

추가) ANY, IN, ALL 의 차이점

 

  • ANY: 조건을 부분적으로 만족하면 충분한 경우.
  • IN: 값이 서브쿼리 결과에 포함되어 있는지 확인할 때.
  • ALL: 조건을 모두 만족해야 하는 경우.

 

 

'SQL ORACLE' 카테고리의 다른 글

2024.12.23(월) 6일차 / DDL (데이터 정의어)  (1) 2024.12.23
JOIN / ORACLE 과 ANSI 의 차이점  (2) 2024.12.20
2024.12.18(수) / 3일차 / GROUP_BY, HAVING  (0) 2024.12.18
SQL Developer 설치 및 계정 생성하는 방법  (0) 2024.12.17
2024.12.17(화) / 2일차 연산자와 함수(2)  (0) 2024.12.17
'SQL ORACLE' 카테고리의 다른 글
  • 2024.12.23(월) 6일차 / DDL (데이터 정의어)
  • JOIN / ORACLE 과 ANSI 의 차이점
  • 2024.12.18(수) / 3일차 / GROUP_BY, HAVING
  • SQL Developer 설치 및 계정 생성하는 방법
동준1234
동준1234
공부 기록
  • 동준1234
    dongjundev
    동준1234
  • 전체
    오늘
    어제
    • 분류 전체보기 (138) N
      • 일상 (1)
      • 자격증 (7)
        • 정보처리기사 필기 준비 (6)
        • 정보처리기사 실기 준비 (0)
        • SQLD (1)
      • KPT 회고 (22)
      • SQL ORACLE (18)
      • project (3)
      • 백준 및 코딩테스트 공부 (6)
      • 4학년 캡스톤 디자인 및 전시회 (3)
      • 대학교 캡스톤 디자인 (6)
      • JAVA (49) N
      • JDBC (1)
      • 네트워크 (1)
      • AI 머신러닝 (1)
      • Front-End (10)
      • Server (10)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
동준1234
2024.12.19(목) / 4일차 / 서브쿼리
상단으로

티스토리툴바