리자

답글, 댓글 로직

 

 

하나의 테이블에서 원글의 답글과 댓글의 답글을 모두 해결하는 방식을 찾고자 합니다.

 

테이블의 구조를 다음과 같이 구성합니다.

 

컬럼명

 종류

 설명

 wr_id

 int

 고유아이디

 wr_parent

 int

 부모아이디

 wr_comment

 int

 0이면 원글, 아니면 댓글

 wr_reply

 varchar(10)

 0~9 그리고 a~z 36진수 사용

 0은 제외
 답글은 35개 까지, 

 깊이는 10개 까지로 한정함

 wr_comment_cnt

 int

 원글에서 댓글의 수를 저장
 or 
 댓글에서 댓댓글의 수를 저장

 wr_subject

 varchar(255)

 제목

 

 

 

 

글이 다음과 같이 저장되어 있다고 했을때

 

SQL 질의: SELECT * FROM `a_write` LIMIT 0, 25 ;

행 : 14

wr_idwr_parentwr_commentwr_replywr_comment_cntwr_subject
1105원글1
21010원글1-1
31020원글1-2
410110원글1-1-1
5200원글2
62010원글2-1
7111댓글1
8122댓글2
9130댓글3
101210댓글2-1
1112110댓글2-1-1
121110댓글1-1
132020원글2-2
1410210원글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_idwr_parentwr_commentwr_replywr_comment_cntwr_subject
5200원글2
62010원글2-1
132020원글2-2
1105원글1
21010원글1-1
410110원글1-1-1
31020원글1-2
1410210원글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_idwr_parentwr_commentwr_replywr_comment_cntwr_subject
1105원글1
21010원글1-1
410110원글1-1-1
31020원글1-2
1410210원글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_idwr_parentwr_commentwr_replywr_comment_cntwr_subject
7111댓글1
121110댓글1-1
8122댓글2
101210댓글2-1
1112110댓글2-1-1
9130댓글3

 

 

 

위와 같이 몇개 안되는 샘플 데이트로 살펴 보았지만 충분히 원글의 답글과 댓글의 답글을 표현할수 있는것을 확인하였습니다.

 

|

댓글 1개

원글의 답변에서 댓글의 답변인 경우도 있으므로 wr_comment_reply 도 포함되어야 합니다.
이것을 간과했네요.
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

태그 필터 (최대 3개) 전체 개발자 소스 기타 mysql 팁자료실 javascript php linux flash 정규표현식 jquery node.js mobile 웹서버 os 프로그램 강좌 썸네일 이미지관련 도로명주소 그누보드5 기획자 견적서 계약서 기획서 마케팅 제안서 seo 통계 서식 통계자료 퍼블리셔 html css 반응형 웹접근성 퍼블리싱 표준화 반응형웹 홈페이지기초 부트스트랩 angularjs 포럼 스크린리더 센스리더 개발자톡 개발자팁 퍼블리셔톡 퍼블리셔팁 기획자톡 기획자팁 프로그램강좌 퍼블리싱강좌
+
제목 글쓴이 날짜 조회
10년 전 조회 1,560
10년 전 조회 1,646
10년 전 조회 1,626
10년 전 조회 2,551
10년 전 조회 1,684
10년 전 조회 1,567
10년 전 조회 1,651
10년 전 조회 1,692
10년 전 조회 1,762
10년 전 조회 1,561
10년 전 조회 1,641
10년 전 조회 1,983
10년 전 조회 1,941
10년 전 조회 1,915
10년 전 조회 1,468
10년 전 조회 1,572
10년 전 조회 1,521
10년 전 조회 1,482
10년 전 조회 1,710
10년 전 조회 1,475
10년 전 조회 1,777
10년 전 조회 1,457
10년 전 조회 1,794
10년 전 조회 1,501
10년 전 조회 1,724
10년 전 조회 2,326
10년 전 조회 1,633
10년 전 조회 1,689
10년 전 조회 1,561
10년 전 조회 2,602
10년 전 조회 2,227
10년 전 조회 1,831
10년 전 조회 1,752
10년 전 조회 1,576
10년 전 조회 1,693
10년 전 조회 2,368
10년 전 조회 2,430
10년 전 조회 3,081
10년 전 조회 2,183
10년 전 조회 2,063
10년 전 조회 2,557
10년 전 조회 1,692
10년 전 조회 1,662
10년 전 조회 1,657
10년 전 조회 1,653
10년 전 조회 1,725
10년 전 조회 1,830
10년 전 조회 2,064
10년 전 조회 1,626
10년 전 조회 2,101
10년 전 조회 2,042
10년 전 조회 1,797
10년 전 조회 1,661
10년 전 조회 1,649
10년 전 조회 1,693
10년 전 조회 1,648
10년 전 조회 1,653
10년 전 조회 1,990
10년 전 조회 1,567
10년 전 조회 1,671
10년 전 조회 1,826
10년 전 조회 1,719
10년 전 조회 2,457
10년 전 조회 2,267
10년 전 조회 1,718
10년 전 조회 1,663
10년 전 조회 1,969
10년 전 조회 1,700
10년 전 조회 1,611
10년 전 조회 1,672
10년 전 조회 1,602
10년 전 조회 1,623
10년 전 조회 1,590
10년 전 조회 1,825
10년 전 조회 3,677
10년 전 조회 1,803
10년 전 조회 1,541
10년 전 조회 1,599
10년 전 조회 1,635
10년 전 조회 2,956
10년 전 조회 2,866
10년 전 조회 2,241
10년 전 조회 2,544
10년 전 조회 2,696
10년 전 조회 2,655
10년 전 조회 2,023
10년 전 조회 1,740
10년 전 조회 2,241
10년 전 조회 1,806
10년 전 조회 1,524
10년 전 조회 1,853
10년 전 조회 2,548
10년 전 조회 2,227
10년 전 조회 1,701
10년 전 조회 2,256
10년 전 조회 6,287
10년 전 조회 1,766
10년 전 조회 2,839
10년 전 조회 2,190
10년 전 조회 2,701