채택완료

mysql 너무너무 궁금한게있어요.

2017-01-06 (금) 09:17:35 6,476

A 테이블

29f690bce0fa16f42344eae5e592450e_1483661686_7798.png

B테이블
29f690bce0fa16f42344eae5e592450e_1483661690_0112.png

A테이블에서 필드 product_use에 6,7,8 이렇게 들어가있는데

B테이블에서 uid 6,7,8번만 갖고 오고싶은데 테이블 join으로 해야하나요??

어떤식으로 가져와야할지 ..도와주세요...

|

답변 3개 / 댓글 2개

채택된 답변
+20 포인트

select * from b where find_in_set(uid, (select product_use from a)) > 0 

답변에 대한 댓글 1개

감사합니다. 서브쿼리.. 공부해야겠네요.

우선 php로 a테이블 필드의 product_use를 들고오시구요

거기에서 6,7,8을 ,구분으로 자르고 다음 쿼리에 B테이블 where절에 6번 7번 8번등을 넣어서

가져오시면 될것같습니다.

mysql에서 구분자로 자르는것이 가능한지 모르겠습니다.

답변에 대한 댓글 1개

6,7,8을 explode로 자르면
Array ( [0] => 6 [1] => 7 [2] => 8 ) 이렇게 되는데
B테이블에서 Array ( [0] => 6 [1] => 7 [2] => 8 ) 이값으로 가져올수있는 방법은없을까요?

답변을 작성하려면 로그인이 필요합니다.