내부 조인 기본

SELECT * FROM orders INNER JOIN users ON orders.user_id = users.user_id;
-- 제일 기본적인 문법으로, orders 테이블의 데이터를 가져오면서 연결된 users의 데이터도 같이 가져온다.
-- 예를 들어 orders 에 order_id, user_id, order_date 이 있고 users에 user_id, name 이 있다면
-- 최종 결과는 (order_id, user_id, order_date, user_id, name) 가 컬럼으로 나오게 된다.
-- 이 경우 user_id 가 중복되기도 하고, 컬럼이 엄청나게 많아질 수 있기 때문에 직접 가져올 컬럼을 지정하는 게 좋다.

SELECT o.order_id, u.user_id, o.order_date FROM orders o JOIN users u ON o.user_id = u.user_id;
-- 제일 많이 쓰는 형식으로, ON절을 쓰기 편하게 테이블의 별칭을 적고, INNER 도 생략했다.
-- 단순히 JOIN 이라고 쓰면 기본적으로 내부조인이므로 생략할 수 있다.
-- 지금은 SELECT에서 별칭은 사용하지 않았지만, 중복되는 컬럼 이름이 있다면 별칭을 정하는게 좋다.

SELECT 
	o.order_id,
	u.user_id 
FROM 
	orders o 
JOIN users u ON o.user_id = u.user_id
WHERE
	o.order_date > '2025-06-01';

SELECT
	o.order_id, 
	u.user_id
FROM
	orders o
JOIN users u ON o.user_id = u.user_id
WHERE
	u.age > 20;
-- 이런식으로 WHERE 절도 똑같이 사용 가능하다.

내부 조인 주의사항