개발 Q&A

제목 mysql 테이블 조회시..
글쓴이 Blenzkim 작성시각 2014/07/29 17:24:01
댓글 : 3 추천 : 0 스크랩 : 0 조회수 : 13270   RSS
안녕하세요. 

A 테이블, B 테이블이 1:다 관계가 맺어져 있는 상태입니다. 

aaa
bbb
aaa
aaa
bbb

이런식으로  불러오고 싶습니다. 
bbb 데이터는 A의 id에 해당된 내용만 가져와야 합니다. 

A 테이블에 데이터가 너무 많아서 페이징도 하고 싶은데요.. 
쿼리를 어떻게 짜야할지..고민입니다. 

참고)
두 테이블을 따로 조회해서 merge 한 다음에 array를 나누어서 쓰려고 했는데..
A테이블에 데이터가 너무 많아서 그럴 수가 없었어요.. 
혹시 다른 분들은 어떻게하시는지 궁금해서 질문 남깁니다. 

감사합니다. 
 
 다음글 ckeditor 에디터이 이런 스킨 있나요? (3)
 이전글 부트스트랩 모바일버전 (2)

댓글

변종원(웅파) / 2014/07/29 18:38:25 / 추천 0
데이터가 어떻게 담겨있는지 알아야 답을 하죠. (1:N의 키는 어느 것이고 화면에 불러온 데이터는 어떻고)

join하고 union은 다른 개념입니다.

뭘 하고 싶은건지 데이터를 정확하게 올리고 물어보세요.
Blenzkim / 2014/07/29 19:11:47 / 추천 0
ㅎㅎ 넋두리를 한거 같네요.. 
정리를 하자면... 

[댓글 테이블]
uuid (PK)
c_comment
c_style
c_targetartistuuid
c_targetuuid

[댓글의 댓글 테이블]
uuid
r_comment
u_comment_uuid(FK)

위와같이 되어 있습니다. 
원하는 것은 
댓글을 불러오고 그 사이에 댓글의 댓글을 끼워넣어서 하나의 Array로 만들어서보여주고 싶습니다. 
조언 부탁 드립니다. 
 
변종원(웅파) / 2014/07/30 10:06:16 / 추천 0
u_comment_uuid 는 어떤 역할인지요?

보통 무한depth 댓글 만들때 댓글의 계층(깊이)을 표현하는 필드를 하나 둡니다.
(숫자로 하기도 하고 영어AAA, AAB 등으로 표기하기도 합니다.)
그리고 댓글의 댓글이라고 테이블을 따로 빼지 않고 하나의 댓글 테이블을 사용합니다.
위 depth 필드와 id 필드로 정렬을 하구요.

다른 게시판들(xe, 그누 등등) 분석을 해보세요.