MySQL 데이터베이스에서 순위(랭킹) 구하기
2016. 5. 26.
다른 데이터베이스에서는 ROW_NUMBER()함수나 RANK()함수를 제공하여 별 다른 쿼리문 없이 순위를 구할 수 있지만 MySQL에서는 아쉽게도 저런 유용한 함수들을 제공하지 않습니다. 관련 함수는 없지만 간단한 쿼리를 이용하여 원하는 열을 기준으로 순위를 구하는 기능을 만들었습니다. SELECT nick, score, rank FROM ( SELECT nick, score, @vRank := @vRank + 1 AS rank FROM member AS p, (SELECT @vRank := 0) AS r ORDER BY score DESC ) AS CNT WHERE nick = 'a'; 이 쿼리는 member 테이블의 nick 열에 있는 'a'의 순위를 반환하는 쿼리입니다.member 테이블의 모든 ..