SQL (5) subquery
Subquery란?
- 쿼리 안의 쿼리라는 의미로 SQL를 더욱 간편하게 작성하기위해 사용하는 기능이다.
예시
kakaopay로 결재한 유저 정보
select u.user_id , u.email, u.name from users u
inner join orders o on u.user_id = o.user_id
where payment_method = 'kakaopay'
위 쿼리문을 subquery로 작성해 보면 아래와 같다.
select u.user_id , u.email, u.name from users u
where u.user_id in (
select o.user_id from orders o
where o.payment_method = 'kakaopay'
)
case, table
- case
- 특정 조건에 따라 데이터를 구분할 때 사용
- 아래 예시는 case를 이용해 point 점수에따라 level이란 필드를 만들어 구분해 주었다.
subquery를 이용해 level별로 그룹핑도 가능하다.
- with
- with절은 subquery를 별칭(alias)로 지정해 보다 깔끔하게 쿼리문을 작성할 수 있게 해준다.
- 아래는 바로 위의 결과에서 subquery를 table1로 지정해주었다.
substring, substring_index
- substring : 문자열의 일부만 출력(아래예시에서 created_at을 날짜부분만 출력)
- substring_index : 문자열을 쪼갠 후 쪼개진 부분 출력(아래 예시에서 이메일을 @로 쪼갬)
Author And Source
이 문제에 관하여(SQL (5) subquery), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@dltjrdud37/SQL-5-subquery저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)