게시물 2개이상 올린 아이디들의 글만 검색되게 하기

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
게시물 2개이상 올린 아이디들의 글만 검색되게 하기

QA

게시물 2개이상 올린 아이디들의 글만 검색되게 하기

답변 2

본문

list.php에

 

if ($is_search_bbs) {

  $sql = " select distinct wr_parent from {$write_table} where {$sql_search} {$sql_order} limit {$from_record}, $page_rows ";

부분을

 

  $sql = " select *  from {$write_table} where {$sql_search} and wr_is_comment = '0' order by mb_id having count(*) > '1' {$sql_order} limit {$from_record}, $page_rows ";

로 변경(추가) 했습니다.

distinct wr_parent 를 쓰니까 에러가 나서 * 과 wr_is_comment를 추가했고..

결과론적으로 2회이상 작성한 게시자들의 마지막글들 1개씩만 검색결과로 출력이 됩니다.

 

원하는 형태는 2번이상 작성한 아이디들의 마지막글이 아닌 전체글을 뽑고싶습니다.

sql은 잼병이라서 ㅜ.ㅜ 구글링을 통해 저기까진 진도를 나갔는데 힌트를 좀 주실수 있을가요

이게 안되면 글마다 작성 횟수값 다 업데이트치는방법밖에 안떠올라서 답답합니다.

 

 

 

 

 

 

 

 

 

이 질문에 댓글 쓰기 :

답변 2

2회 이상 글 작성자 id 추출 쿼리는,


select mb_id
  from [테이블]
where wr_is_comment = 0
 group by mb_id
 having count(*) > 1

입니다. (order by ~ 는 정렬 순서를 정할 때 쓰이는 구문입니다.)

 

이를 활용한 수정 예시입니다.


$sql_tmp = " and mb_id in (select mb_id from {$write_table} where wr_is_comment = 0 group by mb_id having count(*) > 1) ";

$sql = " select distinct wr_parent from {$write_table} where {$sql_search} {$sql_tmp} {$sql_order} limit {$from_record}, $page_rows ";

한번더 in 으로 매칭을 생각을 못했는데...질문에 order by는 제 소스가 수정을 많이해놔서..그누 원본소스껄로 질문을 하려다보니...오타를 냈습니다.ㅜㅜ group by having으로 적용했던건데..답변부분 적용해서 읽어보니 명쾌해집니다. 너무 잘 작동합니다.^^; 감사합니다.

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
  • 질문이 없습니다.
전체 0
© SIRSOFT
현재 페이지 제일 처음으로