select * from point_users left join users on point_users.user_id = users.user_id
레프트 조인
select * from users u inner join point_users p on u.user_id = p.user_id;
이너조인// 집합으로 보면 편함.
select u.name, count(u.name) as count_name from orders o inner join users u on o.user_id = u.user_id where u.email like '%naver.com' group by u.name
위 쿼리가 실행되는 순서: from → join → where → group by → select
서브쿼리
select * from users u where u.user_id in (select o.user_id from orders o where o.payment_method = 'kakaopay');
쿼리안에 쿼리가 있는 구조.
그냥 전에 배운거 응요한다 생각하면 편함.
1 from 실행: users 데이터를 가져와줌
2 Subquery 실행: 해당되는 user_id의 명단을 뽑아줌
3 where .. in 절에서 subquery의 결과에 해당되는 'user_id의 명단' 조건으로 필터링 해 줌
4 조건에 맞는 결과 출력
이번에는 전에 배운거 응용이라 딱히 쓸게없음
더 어려운건 그냥 데이터베이스 다루면서 배우는게 좋겠다.