mysql 나의 랭킹 구하기 질문입니다.
본문
특정 테이블에서 나의 랭킹을 구하는 쿼리 질문입니다. mysql 이에요.
u_mb_id 칼럼과 u_count 라는 칼럼, u_wr_id라는 칼럼 총 3개가 있습니다.
각각 id와 토탈카운트 수, 그리고 글번호가 들어갑니다.
현재 순위구하는 쿼리는
SELECT * FROM g4_url WHERE u_wr_id = '10' ORDER BY u_count DESC LIMIT 10
요렇게 써서 카운트 높은 순서대로 10명만 추출했습니다.
질문은 저의 순위가 몇등인지 구하는 쿼리가 궁금합니다. for 문돌려서 구하는게 너무 비효율적인거 같습니다. 한번에 쿼리로서 구할수 있는 방법이 있을까요?
답변 1
질문을 정확히 이해했는지 모르겠는데...
나의 u_count보다 많은 u_count를 가진 회원의 수를 구하고 + 1을 더하면 순위가 될 듯 합니다.
SELECT COUNT(*) AS `cnt` FROM `g4_url` WHERE `u_wr_id` = '10' AND `u_count` > '{$나의u_count}'
답변을 작성하시기 전에 로그인 해주세요.