| month | id |
| 202206 | 1 |
| 202206 | 1 |
| 202206 | 1 |
| 202206 | 1 |
| 202207 | 2 |
| 202207 | 2 |
| 202207 | 2 |
| 202207 | 2 |
| 202207 | 2 |
| code | code_id |
| L | 1 |
| V | 2 |
| type | type_name | type_name_korean |
| code | L | 사과 |
| code | V | 배 |
| code | E | 메론 |
| code | D | 수박 |
| sql | F | |
| sql | G | |
| sql | H | |
| sql | I | |
| sql | J |
위의 3개의 테이블을 조인하는 부분에 대해서 질문드립니다...
C테이블에서 type컬럼이 code인 type_name과 B테이블의 code와 같은 type_name_korean을 select해서, A테이블의 id와 B테이블의 code_id가 같은 부분에 데이터를 넣고 싶습니다... 테이블 2개를 조인하는 부분은 할 수 있는데, 3개를 조인하는 방법을 잘 모르겠어요... 조언이라도 부탁드립니다...
(아래처럼 나오게 하고 싶습니다)
| month | id |
| 202206 | 사과 |
| 202206 | 사과 |
| 202206 | 사과 |
| 202206 | 사과 |
| 202207 | 배 |
| 202207 | 배 |
| 202207 | 배 |
| 202207 | 배 |
| 202207 | 배 |
B 테이블은 왜 데이터가 중복이죠? 코드 테이블이 아닌가요?
헐, 잘못 썼어요...
a.id = b.code_id
and b.code = c.type_name
and c.type = 'code'
SELECT a.month
, c.type_name_korean
FROM t1 a
INNER JOIN t2 b
ON a.id = b.code_id
INNER JOIN t3 c
ON b.code = c.type_name
AND c.type = 'code'
;