채택완료
포인트 랭킹 중 1위만 뽑아오는 코드인데, 짧고 빠르게 수정 가능할까요?
Copy
<?php
$point_sql = "SELECT DISTINCT t1.mb_id, t1.mb_point, t1.mb_nick, t1.mb_level, COUNT(t1.mb_id) AS ranking
FROM {$g5['member_table']} t1, {$g5['member_table']} t2
WHERE (t1.mb_point < t2.mb_point
OR t1.mb_id = t2.mb_id) AND t1.mb_level < 9
GROUP BY t1.mb_id
ORDER BY ranking
LIMIT 0 , 1";
$point_que = sql_query($point_sql);
while($point_row = sql_fetch_array($point_que)){
$tmp_member = sql_fetch("select mb_id, mb_nick, mb_email, mb_homepage from {$g5['member_table']} where mb_id = '".$point_row['mb_id']."'");
?>
<?php echo $point_row['mb_nick'] ?>님, <?=number_format($point_row['mb_point'])?> 포인트 보유 중.
<? } ?>
사이드뷰는 사용하지 않습니다.
이 sql문과 반복문을 짧고 간략하게 코드 수정 가능할까요??
|
답변 3개
채택된 답변
+20 포인트
이렇게 하면 되겠네요~~~~
<?php
$point_sql = "select mb_id, mb_nick from {$g5['member_table']} where mb_level < 9 order by mb_point desc limit 1 " ;
$point_row = sql_fetch($point_sql);
echo $point_row['mb_nick'] ?>님, <?php echo number_format($point_row['mb_point'])?> 포인트 보유 중.
답변을 작성하려면 로그인이 필요합니다.