고수님들, 전체 포인트 순 정렬 최신글 스킨인데, 이것좀 봐주십시오. ㅠ > 그누4 질문답변

그누4 질문답변

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

고수님들, 전체 포인트 순 정렬 최신글 스킨인데, 이것좀 봐주십시오. ㅠ 정보

고수님들, 전체 포인트 순 정렬 최신글 스킨인데, 이것좀 봐주십시오. ㅠ

본문

안녕하세요. 고수님들,
그누보드 포인트 테이블에서

포인트를 각 아이디마다 sum 해서 그 순서로 정렬하고자 하는데,

다른건 하겟는데, mb_level 이 3보다 작은것만 어케 끌고오죠?

즉, g4_point 테이블에서만 끌고오는건 하겟는데, mb_level 은 g4_member 테이블이라, join이나 다른 mysql 명령어를 쓸거 깉은데, 그걸 모르겟어서요.

g4_member 에서 mb_point 를 쓰지않고 굳이 g4_point 에서 sum 을 하는 이유는 게시물 포인트만 쓰기 위함입니다.  가입포인트나 관리자가 준 포인트는 제외하고 쓰려는 거거든요

아래는 제가 해놓은 코드구요.  고견을 부탁드립니다. ㅠ

==========================================

<script type="text/javascript" src="<?=$g4['path']?>/js/common.js"></script>

<div id="latest_rank">
<table width=90% cellpadding=0 cellspacing=0 align="center">
<tr><td height=30><!--<a href="<?=$g4[bbs_path]?>/board.php?bo_table=<?=$bo_table?>">--><img src="<?=$g4[path]?>/home_images/trans.gif" border="0" style="width:100%;height:30px;"><!--</a>--></td></tr>
<?
$sql_new = "
SELECT
mb_id, SUM(po_point) as cnt
from $g4[point_table]
where po_rel_table<>'@member' and po_rel_table<>'@passive'
group by mb_id
order by cnt desc
limit 0,7 ";

    //explain($sql);
    $result_new = sql_query($sql_new);
    for ($i=0; $row_new = sql_fetch_array($result_new); $i++) {

?>
  <tr align=center style="BORDER-BOTTOM: lightgrey 1px dashed; OVERFLOW: hidden">
    <td height="15" align="left"><img src="<?=$latest_skin_path?>/img/<?=$i+1?>.gif" width="12" height="11" align="absmiddle"></td>
<td height="20" align="left"><?=$row_new[mb_id]?> 님</td>
    <td width="30" height="20"><?=$row_new[mb_level]?></td>
    <td width="50" height="20" align="right"><?=$row_new[cnt]?> 점</td>
  </tr>
<? } ?>

<? if (count($list) == 0) { ?><tr><td align=center height=50><font color=#6A6A6A>게시물이 없습니다.</a></td></tr><? } ?>
</table>
</div>

====================================

mb_level 부분을 어떻게 끌고와야 할까요?
left join 이런건가.. 음..

=======================================

두서없어서 다시 말씀드리면..

전체 포인트 테이블에서 sum 을 해서 그 순으로 정렬하되, mb_level 이 3 이하인 조건으로 끌고와야 한다는겁니다.

고견 부탁드릴게요.~ 고수님들 ㅠ

댓글 전체

SELECT
mb_id, SUM(po_point) as cnt
from g4_point
where po_rel_table<>'@member' and po_rel_table<>'@passive'
and mb_id IN (select mb_id from `$g4[member_table]` where mb_level <= 3) as drv1
group by mb_id
order by cnt desc
limit 0,7;

이렇게요?  이리 하니 에러가 나던데.. 어케 해야 할까요? 음.. ㅠ.

쿼리에 넘 약해서리..
전체 41 |RSS
그누4 질문답변 내용 검색

회원로그인

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