속성에 해당하는 글 1

select 절 속성 필드에서 사용하는 Scalar Subquery

DB 데이터베이스|2022. 9. 18. 17:36
300x250

 

member, log_view, trade
회원정보, 회원이 조회한 제품 로그, 회원이 구매한 제품 목록
이렇게 3개의 테이블이 있다.

보통은 

select * member as a
left join log_view as b
on a.userid = b.userid

left join trade as c
on a.userid = c.userid

 

이런식으로 join 쿼리를 사용하여 결과를 낼수 있는데

 

만약 회원아이디별 제품 조회수, 거래건수를 뽑을려고 하면

Scalar Subquery를 사용하여 심플하게 뽑을수 있다.

 

기존의

select userid from meber 쿼리에서

속성 쿼리 2개만 아래와같이 추가하면 아주 간단!

select userid
, ( select count(*) cnt from log_view where log_view.userid = member.userid ) cnt_view
, ( select count(*) cnt from trade where trade .userid = member.userid ) cnt_trade
from member

예상되는 결과는 아래와 같다.

userid cnt_view cnt_trade
test1 5 6
test2 2 8

 

간단하쥬 ㅋㅋㅋ

300x250

'DB 데이터베이스' 카테고리의 다른 글

MYSQL 백업/복구 + 특정테이블만  (0) 2023.08.03
mysql 테이블 단위 내용 분리  (0) 2023.08.03
DB 인덱스 추가 쿼리  (0) 2022.08.17

댓글()