하나의 테이블에서 원글의 답글과 댓글의 답글을 모두 해결하는 방식을 찾고자 합니다.
테이블의 구조를 다음과 같이 구성합니다.
컬럼명 |
종류 | 설명 |
wr_id |
int | 고유아이디 |
wr_parent |
int | 부모아이디 |
wr_comment |
int | 0이면 원글, 아니면 댓글 |
wr_reply | varchar(10) | 0~9 그리고 a~z 36진수 사용 0은 제외 깊이는 10개 까지로 한정함 |
wr_comment_cnt | int | 원글에서 댓글의 수를 저장 |
wr_subject | varchar(255) | 제목 |
글이 다음과 같이 저장되어 있다고 했을때
SQL 질의: SELECT * FROM `a_write` LIMIT 0, 25 ;
행 : 14
| wr_id | wr_parent | wr_comment | wr_reply | wr_comment_cnt | wr_subject |
|---|---|---|---|---|---|
| 1 | 1 | 0 | 5 | 원글1 | |
| 2 | 1 | 0 | 1 | 0 | 원글1-1 |
| 3 | 1 | 0 | 2 | 0 | 원글1-2 |
| 4 | 1 | 0 | 11 | 0 | 원글1-1-1 |
| 5 | 2 | 0 | 0 | 원글2 | |
| 6 | 2 | 0 | 1 | 0 | 원글2-1 |
| 7 | 1 | 1 | 1 | 댓글1 | |
| 8 | 1 | 2 | 2 | 댓글2 | |
| 9 | 1 | 3 | 0 | 댓글3 | |
| 10 | 1 | 2 | 1 | 0 | 댓글2-1 |
| 11 | 1 | 2 | 11 | 0 | 댓글2-1-1 |
| 12 | 1 | 1 | 1 | 0 | 댓글1-1 |
| 13 | 2 | 0 | 2 | 0 | 원글2-2 |
| 14 | 1 | 0 | 21 | 0 | 원글1-2-1 |
원글을 표시할때는 이 쿼리를 실행합니다.
답변의 깊이(depth)는 wr_reply 의 갯수로 처리할수 있습니다.
SQL 질의: SELECT * FROM `a_write` where wr_comment = 0 order by wr_parent desc, wr_reply LIMIT 0, 25 ;
행 : 8
| wr_id | wr_parent | wr_comment | wr_reply | wr_comment_cnt | wr_subject |
|---|---|---|---|---|---|
| 5 | 2 | 0 | 0 | 원글2 | |
| 6 | 2 | 0 | 1 | 0 | 원글2-1 |
| 13 | 2 | 0 | 2 | 0 | 원글2-2 |
| 1 | 1 | 0 | 5 | 원글1 | |
| 2 | 1 | 0 | 1 | 0 | 원글1-1 |
| 4 | 1 | 0 | 11 | 0 | 원글1-1-1 |
| 3 | 1 | 0 | 2 | 0 | 원글1-2 |
| 14 | 1 | 0 | 21 | 0 | 원글1-2-1 |
1번 게시물 만을 모아보는 경우에는 이렇게 쉽게 처리할수 있습니다.
SQL 질의: SELECT * FROM `a_write` where wr_parent=1 and wr_comment = 0 order by wr_parent desc, wr_reply LIMIT 0, 25 ;
행 : 5
| wr_id | wr_parent | wr_comment | wr_reply | wr_comment_cnt | wr_subject |
|---|---|---|---|---|---|
| 1 | 1 | 0 | 5 | 원글1 | |
| 2 | 1 | 0 | 1 | 0 | 원글1-1 |
| 4 | 1 | 0 | 11 | 0 | 원글1-1-1 |
| 3 | 1 | 0 | 2 | 0 | 원글1-2 |
| 14 | 1 | 0 | 21 | 0 | 원글1-2-1 |
1번의 코멘트 만 노출하는 경우에는 이렇게 처리합니다.
SQL 질의: SELECT * FROM `a_write` where wr_parent = 1 and wr_comment > 0 order by wr_comment, wr_reply LIMIT 0, 25 ;
행 : 6
| wr_id | wr_parent | wr_comment | wr_reply | wr_comment_cnt | wr_subject |
|---|---|---|---|---|---|
| 7 | 1 | 1 | 1 | 댓글1 | |
| 12 | 1 | 1 | 1 | 0 | 댓글1-1 |
| 8 | 1 | 2 | 2 | 댓글2 | |
| 10 | 1 | 2 | 1 | 0 | 댓글2-1 |
| 11 | 1 | 2 | 11 | 0 | 댓글2-1-1 |
| 9 | 1 | 3 | 0 | 댓글3 |
위와 같이 몇개 안되는 샘플 데이트로 살펴 보았지만 충분히 원글의 답글과 댓글의 답글을 표현할수 있는것을 확인하였습니다.
댓글 1개
이것을 간과했네요.
게시판 목록
프로그램
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 7430 |
|
11년 전 | 4947 | |
| 7429 | 11년 전 | 1779 | ||
| 7428 |
멋진남자임
|
11년 전 | 1167 | |
| 7427 |
sdflksdj2
|
11년 전 | 830 | |
| 7426 | 11년 전 | 1364 | ||
| 7425 | 11년 전 | 1391 | ||
| 7424 | 11년 전 | 1054 | ||
| 7423 |
SeungYeon
|
11년 전 | 564 | |
| 7422 | 11년 전 | 811 | ||
| 7421 |
sdflksdj2
|
11년 전 | 690 | |
| 7420 | 11년 전 | 970 | ||
| 7419 |
|
11년 전 | 1404 | |
| 7418 |
멋진남자임
|
11년 전 | 1440 | |
| 7417 | 11년 전 | 608 | ||
| 7416 |
senseme
|
11년 전 | 1233 | |
| 7415 | 11년 전 | 963 | ||
| 7414 | 11년 전 | 715 | ||
| 7413 | 11년 전 | 4848 | ||
| 7412 | 11년 전 | 4406 | ||
| 7411 |
holla
|
11년 전 | 898 | |
| 7410 | 11년 전 | 4252 | ||
| 7409 | 11년 전 | 3929 | ||
| 7408 | 11년 전 | 4271 | ||
| 7407 | 11년 전 | 5087 | ||
| 7406 | 11년 전 | 4734 | ||
| 7405 | 11년 전 | 4302 | ||
| 7404 | 11년 전 | 762 | ||
| 7403 | 11년 전 | 5682 | ||
| 7402 | 11년 전 | 1519 | ||
| 7401 |
|
11년 전 | 979 | |
| 7400 | 11년 전 | 2973 | ||
| 7399 |
멋진남자임
|
11년 전 | 918 | |
| 7398 |
파랑새1597
|
11년 전 | 2706 | |
| 7397 | 11년 전 | 2273 | ||
| 7396 |
basketball
|
11년 전 | 1373 | |
| 7395 | 11년 전 | 1612 | ||
| 7394 | 11년 전 | 933 | ||
| 7393 | 11년 전 | 2070 | ||
| 7392 | 11년 전 | 851 | ||
| 7391 |
잘살아보자
|
11년 전 | 5364 | |
| 7390 |
잘살아보자
|
11년 전 | 2229 | |
| 7389 |
잘살아보자
|
11년 전 | 3321 | |
| 7388 |
파랑새1597
|
11년 전 | 931 | |
| 7387 | 11년 전 | 1108 | ||
| 7386 |
프리랜서퍼블리셔
|
11년 전 | 973 | |
| 7385 | 11년 전 | 1572 | ||
| 7384 |
울라라라우
|
11년 전 | 892 | |
| 7383 | 11년 전 | 1555 | ||
| 7382 |
잘살아보자
|
11년 전 | 4225 | |
| 7381 |
잘살아보자
|
11년 전 | 2000 | |
| 7380 |
잘살아보자
|
11년 전 | 1944 | |
| 7379 |
잘살아보자
|
11년 전 | 5908 | |
| 7378 |
senseme
|
11년 전 | 1901 | |
| 7377 |
잘살아보자
|
11년 전 | 2749 | |
| 7376 | 11년 전 | 2417 | ||
| 7375 |
잘살아보자
|
11년 전 | 1051 | |
| 7374 |
잘살아보자
|
11년 전 | 3161 | |
| 7373 |
잘살아보자
|
11년 전 | 2482 | |
| 7372 |
잘살아보자
|
11년 전 | 5833 | |
| 7371 |
잘살아보자
|
11년 전 | 3469 | |
| 7370 |
잘살아보자
|
11년 전 | 1916 | |
| 7369 |
잘살아보자
|
11년 전 | 2174 | |
| 7368 |
ksdhtm56
|
11년 전 | 573 | |
| 7367 | 11년 전 | 1438 | ||
| 7366 | 11년 전 | 935 | ||
| 7365 | 11년 전 | 3546 | ||
| 7364 |
잘살아보자
|
11년 전 | 1399 | |
| 7363 |
잘살아보자
|
11년 전 | 1372 | |
| 7362 |
잘살아보자
|
11년 전 | 1508 | |
| 7361 | 11년 전 | 3596 | ||
| 7360 | 11년 전 | 3563 | ||
| 7359 | 11년 전 | 3381 | ||
| 7358 |
멋진남자임
|
11년 전 | 1029 | |
| 7357 | 11년 전 | 3416 | ||
| 7356 | 11년 전 | 2603 | ||
| 7355 | 11년 전 | 3194 | ||
| 7354 |
파랑새1597
|
11년 전 | 651 | |
| 7353 |
잘살아보자
|
11년 전 | 2428 | |
| 7352 |
잘살아보자
|
11년 전 | 2416 | |
| 7351 |
잘살아보자
|
11년 전 | 2481 | |
| 7350 |
잘살아보자
|
11년 전 | 1478 | |
| 7349 |
잘살아보자
|
11년 전 | 1970 | |
| 7348 |
잘살아보자
|
11년 전 | 1287 | |
| 7347 |
잘살아보자
|
11년 전 | 1082 | |
| 7346 |
멋진남자임
|
11년 전 | 1651 | |
| 7345 | 11년 전 | 995 | ||
| 7344 | 11년 전 | 3877 | ||
| 7343 | 11년 전 | 3660 | ||
| 7342 | 11년 전 | 1288 | ||
| 7341 | 11년 전 | 2523 | ||
| 7340 |
|
11년 전 | 938 | |
| 7339 | 11년 전 | 1738 | ||
| 7338 | 11년 전 | 3351 | ||
| 7337 | 11년 전 | 3664 | ||
| 7336 | 11년 전 | 4603 | ||
| 7335 | 11년 전 | 978 | ||
| 7334 | 11년 전 | 1538 | ||
| 7333 | 11년 전 | 2939 | ||
| 7332 |
|
11년 전 | 1111 | |
| 7331 |
KeePin뽁이
|
11년 전 | 1105 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기