DB 추출 관련 > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

DB 추출 관련 정보

DB 추출 관련

본문


DB 추출관련 입니다.
이쪽 부분은 잘 몰라서 ㅎㅎ

 $sql="select * from g4_board_file where bo_table='pds_01' or bo_table='util' or bo_table='mapp' or bo_table='patch' order by bf_download desc limit 8";
 $result = sql_query($sql);
 $ranking=0;
 while($bf_rank = mysql_fetch_array($result))
 {
 $sql2="select * from g4_write_$bf_rank[bo_table] where wr_id='$bf_rank[wr_id]'";
 $result2 = sql_query($sql2);

 while($rank=mysql_fetch_array($result2))

위의 소스는 다운로드 횟수 순위를 출력하는데 사용하는 소스의 부분 입니다.
g4_board_file 에서 bf_download 로 가져 오는건 대충 알겠는데

이 소스를 조회수나 1번링크 hit 순으로 바꾸고 싶습니다.
어떻게 해야 하나요? ㅠ_ㅠ

댓글 전체

조회수나 1번링크 hit 순으로 정렬하고

어느 테이블에서 가져오고 싶으신 건지 알면 답변이 빠를것 같습니다.

g4_board_file 테이블인가요?
g4_write_xxxx 테이블인가요?
select * from g4_board_file where bo_table='pds_01' or bo_table='util' or bo_table='mapp' or bo_table='patch' order by bf_download desc limit 8

일단 위의 쿼리로 날리신다는 것은 util 이나 pds_01,mapp,patch 게시판에 있는 파일의 정보를 다운로드 카운트 순으로 가져오는 것입니다.

쓰신글을 보면 그 해당글의 조회수나 1번 파일의 힛순으로 가져오신다고 하셨는데 이것은 정리하자면 파일기준에서 게시글 기준으로 바꾸신다는 내용입니다. (제 해석이 맞는지요?)

일단 하나하나 설명을 드리겠습니다.
1번파일의 링크 순으로 정렬하시고자 한다면 파일테이블의 bf_no=0 인것을 추출해서 그것의 랭크를 주시면 됩니다.

따라서
select * from g4_board_file where (bo_table='pds_01' or bo_table='util' or bo_table='mapp' or bo_table='patch') AND bf_no='0'  order by bf_download desc limit 8

가 됩니다. 이쿼리문은 해당 게시판들에 올라온 게시물 중 1번 링크에 올려진 파일들을 가져와 다운로드 순으로 정렬하게 됩니다.


두번째의 경우는 조회수를 접목하는 것인데 이것은 해당 게시판을 모두 union all 하여 보여주어야 합니다.
또한 서브쿼리가 적용되지 않는 mysql 4.0 대 버전일 경우 더 많은 비용을 필요로 합니다. 특히 해당 게시판이 4개나 되기 때문에 너무 많은 비용을 소모할 것 같습니다. 꼭 적용하시고자 한다면 개인적으로 쪽지 주시면 답변드리도록하겠습니다.
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT