서로 다른 테이블 값 조인(Join) 시키기 :: Hide

서로 다른 테이블 값 조인(Join) 시키기

Posted by Hide­
2017.07.08 08:00 Coding/PHP & MySQL

[document테이블]

- id

- title

- desc

- author

- etc


[parts테이블]

- id

- item_per

- item_req


위와 같은 두개의 테이블이 있다고 가정한다.

document테이블의 id값은 정수이며 parts테이블은 정수|정수 형식으로 되어있다.

나는 document테이블의 id값 중 |를 기준으로 split하여 뒤에 있는 정수 값을 얻고 해당 값을 통해

document테이블의 id값과 비교를 하게 만들었다.

목적은 다음과 같다.

parts테이블을 조회하되, id에서 얻은 정수값을 통해 document테이블의 title, desc를 같이 표현해주고 싶다.


SELECT a.id, b.title, b.desc, a.item_per, a.item_req FROM parts a LEFT JOIN document b on SUBSTRING_INDEX(a.id,"|",-1)=b.id;


먼저 parts테이블에 a라는 이름을 주고 document테이블에 b라는 이름을 줬다.

SUBSTRING_INDEX를 사용하여 |를 기준으로 split하고 뒤에 있는 값을 얻어왔다. (인자를 1을 주면 앞의 값을 반환한다)

해당 값으로 b(document)테이블의 id값과 같은 것들을 골라내고 조인시켰다.



다른 사람들이 많이 읽은 글
이 댓글을 비밀 댓글로

티스토리 툴바