• 티스토리 홈
  • 프로필사진
    31514
  • 방명록
  • 공지사항
  • 태그
  • 블로그 관리
  • 글 작성
31514
  • 프로필사진
    31514
    • 분류 전체보기 (109)
      • Book (66)
        • Learning SQL (9)
        • SQL 레벨업 (8)
        • 견고한 데이터 엔지니어링 (5)
        • 운영체제 (2)
        • 스파크 완벽 가이드 (9)
        • 파이썬 코딩의 기술 (29)
        • 분산 컴퓨팅 (4)
      • 개발 (25)
      • 기타 (10)
        • 출퇴근 공부 간단 정리 (7)
      • ELK (6)
  • 방문자 수
    • 전체:
    • 오늘:
    • 어제:
  • 최근 댓글
      등록된 댓글이 없습니다.
    • 최근 공지
      • 31514의 이전 블로그는 여기로!
      등록된 공지가 없습니다.
    # Home
    # 공지사항
    #
    # 태그
    # 검색결과
    # 방명록
    • 9장 - 서브쿼리
      2024년 09월 20일
      • 31514
      • 작성자
      • 2024.09.20.:15

      SQL 구문이 실행을 완료한 후 데이터베이스 서버가 서브쿼리 결과에 할당된 메모리를 해제한다.


      비상관 서브쿼리 - 독립적으로 실행되는 서브쿼리

      select city_id, city
      from city
      where country_id <>
        (select country_id from country where country = 'India');

      상관 서브쿼리 - 하나 이상의 열을 참조하는 포함 구문에 의존적인 서브쿼리

      따라서 포함 구문이 실행되기 전까지 실행되지 않는다.

      select c.first_name, c.last_name
      from customer c
      where 20 =
        (select count(*) from rental r
         where r.customer_id = c.customer_id);

      주의할 점은 포함 쿼리의 각 행에 대해 한 번씩 실행되므로, 포함 쿼리가 많은 행을 반환할 경우 성능 문제가 발생할 수 있다.


      상관 서브쿼리는 다음과 같이 update, delete, insert 문에서도 자주 사용된다.

      update customer c
      set c.last_update =
        (select max(r.rental_date) from rental r
         where r.customer_id = c.customer_id);

      서브쿼리를 select, from, where 절 뿐만 아니라 having, order by 절에서도 사용할 수 있다.

      select a.actor_id, a.first_name, a.last_name
      from actor a
      order by
        (select count(*) from film_actor fa
         where fa.actor_id = a.actor_id) desc;

      'Book > Learning SQL' 카테고리의 다른 글

      13장 - 인덱스와 제약조건  (0) 2024.09.24
      12장 - 트랜잭션  (0) 2024.09.23
      8장 - 그룹화와 집계  (0) 2024.09.19
      6장 - 집합 연산자  (0) 2024.09.12
      4장 - 필터링  (0) 2024.09.11
      다음글
      다음 글이 없습니다.
      이전글
      이전 글이 없습니다.
      댓글
    조회된 결과가 없습니다.
    스킨 업데이트 안내
    현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
    ("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)
    목차
    표시할 목차가 없습니다.
      • 안녕하세요
      • 감사해요
      • 잘있어요

      티스토리툴바