Scala Subquery 와 Left Outer Join 의 성능차이

2022. 3. 25. 15:25·개발중/MYSQL
728x90
반응형

오늘 쿼리를 짜다가

의문이 들어서 포스팅을 하려고 한다.

Scala Subquery 와 Left Outer Join 의 성능 차이가 있을까 ?? 😦


Scala Subquery 는 내가 주로 사용하는 조인 방식이다.

 

SELECT A.SEQ
       , A.NAME
       , ( SELECT B.CODE_NAME
             FROM CODEB
            WHERE A.CODE_SEQ = B.CODE_SEQ )
  FROM USER A

 

Left Outer Join 방식은 다른 사람들 코드에서 흔히 볼 수 있는 조인 방식이다.

 

SELECT A.SEQ
       , A.NAME
       , B.CODE_NAME
  FROM USER A LEFT OUTER JOIN CODE B
    ON A.CODE_SEQ = B.CODE_SEQ

 


 

오늘 쿼리를 짜다가 안 풀리는 부분이 있어서 대리님께 피드백을 부탁 드렸는데

"스칼라 쿼리 쓰는 부분 속도 고려하셔야 할꺼에요!" 

라고 하셔서 바로 찾아봤더니 속도에 차이가 있다는 것을 알게 되었다.

 

 

근데 인터넷에 있는 정보를 진리라 믿고 있었는데 ,,

케바케라는 사실을 인지시켜주셨다.

 

 


 

🔊 스칼라 서브쿼리(Scala Subquery)


함수처럼 한 레코드 당 정확히 하나의 값만을 리턴하는 서브쿼리.

기본으로 Outer Join이 적용되어 있다.

 

🔊 인라인 뷰(Inline View)


FROM절에 사용되는 서브쿼리를 지칭.

마치 뷰처럼 SQL문이 실행될 때만 임시적으로 생성되는 동적인 뷰이기 때문에

인라인 뷰(View)라는 이름이 붙었다.

그래서 일반적인 뷰를 정적 뷰(Static View), 인라인 뷰를 동적 뷰(Dynamic View)라고도 한다.

 

🔊 서브쿼리(Subquery)


하나의 SQL문 안에 포함되어 있는 또 다른 SQL문을 지칭.

위 두가지 경우 이외에 쓰이는 서브쿼리를 보통 통틀어서 일컫는다.

 


 

728x90
반응형
저작자표시 (새창열림)

'개발중 > MYSQL' 카테고리의 다른 글

MYSQL 쿼리 활용 FIND_IN_SET  (0) 2022.05.23
스칼라 서브쿼리와 인덱스 뷰 성능 차이 알아보고 개선하기 !! 🚦  (0) 2022.04.25
SQL TimeStamp 함수  (0) 2021.10.18
[MYSQL] INSERT MAX + 1  (1) 2021.10.12
insert key  (0) 2021.10.12
'개발중/MYSQL' 카테고리의 다른 글
  • MYSQL 쿼리 활용 FIND_IN_SET
  • 스칼라 서브쿼리와 인덱스 뷰 성능 차이 알아보고 개선하기 !! 🚦
  • SQL TimeStamp 함수
  • [MYSQL] INSERT MAX + 1
Binsoo
Binsoo
내 트러블 슈팅
  • Binsoo
    정수빈 기술블로그임.
    Binsoo
  • 전체
    오늘
    어제
    • 빈수 개발자 개발 일기 (948)
      • 개발중 (635)
        • Spring Boot (95)
        • Spring Security (2)
        • Spring Batch (6)
        • Spring Boot & Redis (13)
        • Java Persistence API (JPA) (28)
        • Web (42)
        • Rest Api (7)
        • Spring Concurrency Control (3)
        • Redis (8)
        • Kubernetes (k8s) (4)
        • MYSQL (35)
        • AirFlow (15)
        • Docker (2)
        • Git (22)
        • Linux (9)
        • JSON Web Tokens (JWT) (4)
        • Troubleshooting (88)
        • Swagger (0)
        • Vue.js (52)
        • Java (74)
        • html (12)
        • C (5)
        • jQuery (15)
        • JavaServer Pages (JSP) (17)
        • Arduino (1)
        • JavaScript (35)
        • Amazon Web Services (AWS) (11)
        • Algorithm (9)
        • 참고 기능 (18)
        • mongo (2)
      • PROJECT (27)
        • 스프링부트+JPA+몽고 API 개발 (3)
        • MINI (2)
        • 게시판 (3)
        • vue 프로젝트 (1)
        • JPA 사이드 프로젝트 기록 (17)
      • TEAM STUDY (156)
        • 가상 면접 사례로 배우는 대규모 시스템 설계 기초 (8)
        • 한 권으로 읽는 컴퓨터 구조와 프로그래밍 (12)
        • NAVER DEVELOPER (4)
        • LINUX (23)
        • PYTHON (19)
        • SERVER (8)
        • 알고리즘 코딩 테스트 스터디 (31)
        • 쿠버네티스 (40)
        • 대세는 쿠버네티스 [초급~중급] (11)
      • BOOK (0)
      • 자격증 (61)
        • 리눅스 1급 - 필기 기록 (19)
        • 네트워크 관리사 (2)
        • 네트워크 관리사 2급 - 실기 기록 (21)
        • 네트워크 관리사 2급 - 필기 기록 (16)
        • 정보처리 (2)
      • 직장인 대학원 (27)
        • 기록 (3)
        • 캐글 스터디 (3)
        • R (12)
        • MLOps (9)
      • 논문 (5)
  • 블로그 메뉴

    • 홈
    • 태그
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    네트워크 관리사 요약
    REST API
    리눅스 마스터 1급
    네트워크 관리사
    네트워크 관리사 실기
    네트워크 관리사 학점
    java
    리눅스 마스터 요약
    Spring
    쿠버네티스 스터디
    파이썬
    파이썬 알고리즘
    Git 저장소
    스프링
    알고리즘
    네트워크 관리사 2급
    리눅스 마스터 1급 요약
    쿠버네티스
    springboot
    리눅스 마스터 1급 정리
    BackendDevelopment
    docker
    VUE
    git
    redis
    리눅스 마스터
    리눅스 1급 요약
    네트워크 관리사 자격증
    네트워크 관리사 2급 실기
    jpa
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
Binsoo
Scala Subquery 와 Left Outer Join 의 성능차이
상단으로

티스토리툴바