[SQL] MYSQL에서 순위를 생성하는 가장 좋은 방법은 무엇입니까?
SQLMYSQL에서 순위를 생성하는 가장 좋은 방법은 무엇입니까?
MYSQL의 행 데이터에 추가 행의 순위를 얻을 수있는 가장 좋은 방법은 무엇입니까?
예를 들어, 나는 학생들의 목록을 가지고 있고이 GPA에 순위에 싶은 말은. 나는 내가 GPA로 주문할 수 있습니다 알고 있지만,이 MYSQL 내가 돌아올 rowData 하행에서뿐만 아니라 순위를 반환하는 가장 빠른 방법은 무엇입니까?
해결법
-
==============================
1.이 ROWNUM으로 순위를 반환합니다
이 ROWNUM으로 순위를 반환합니다
SELECT @rownum := @rownum + 1 rownum, t.* FROM (SELECT @rownum:=0) r, (SELECT * FROM students ORDER BY gpa DESC) t;
-
==============================
2.이것은 학생들의 순위, 학생 ID 및 GPA를 반환합니다.
이것은 학생들의 순위, 학생 ID 및 GPA를 반환합니다.
set @rownum := 0; SELECT @rownum := @rownum + 1 AS rank, student_id, gpa FROM `students` ORDER BY gpa DESC
from https://stackoverflow.com/questions/431053/what-is-the-best-way-to-generate-ranks-in-mysql by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] UPDATE 경우는 SQL Server 2008의 다른 INSERT 존재 [중복] (0) | 2020.05.22 |
---|---|
[SQL] 콜론 기호 무엇을 않습니다 ":"SQL 쿼리에 있습니까? (0) | 2020.05.22 |
[SQL] 쿼리에 대한 행 번호를 얻기 (0) | 2020.05.21 |
[SQL] (SQL의 28 개 라인을 작성하지 않고도) 28 일 슬라이딩 윈도우 집계에 대한 BigQuery의 SQL (0) | 2020.05.21 |
[SQL] LINQ 쿼리의 SQL 사용자 정의 함수를 호출 (0) | 2020.05.21 |