현재 3개의 테이블이 있습니다.
tb_1
tb_2
tb_3
tb_1은 주소록 카테고리이구요
tb_2는 주소록이구요
tb_3은 주소록이 등록된 카테고리입니다..
주소록 카테고리는 개인이 주소록 카테고리를 생성
주소록은 주소를 생성
주소록 등록된 카테고리는 주소를 등록할때 주소록이 포함할 카테고리를 생성합니다.
tb_1
gid 그룹번호
gname 그룹명
user_id 사용자아이디
tb_2
cid 주소번호
user_id 사용자아이디
cname 주소명
email 메일주소
tel 전화번호
memo 메모
tb_3
pid 글번호
user_id 사용자아이디
cid 주소번호
gid 그룹번호
주소를 등록할때 그룹을 1,3 이렇게 선택을 한다면
cid user_id cname email
1 test test test@name
pid user_id cid gid
1 test 1 1,3
이렇게 저장이 되는데요
리스트를 뽑을때
주소글번호 1에 그룹이 1,3
이므로
tb_1가 조인해서 1,3에 해당하는 그룹명을
가져와서 리스트 그룹명에 표시를 해줄려고 합니다.
select
a.cid, a.user_id, a.cname, a.email,
(select c.gname from tb_1 c where c.gid=b.cid)
from tb_2 a, tb_3 b
where a.cid=b.cid
이런방식으로 쿼리를 했는데
리스트목록에
1,3이 한번에 안나오고 1,3이 하나씩 출력이 되네요.
이런경우 어떻게 쿼리를 날려야될지
도움좀 부탁드립니다.
질문이 부족할수 있으니 이해 부탁드릴꼐요
오늘도 화이팅하세요