PHP mysql에서 순위를 쿼리하는 방법

藏色散人
풀어 주다: 2023-03-13 16:00:02
원래의
2163명이 탐색했습니다.

php mysql 쿼리 순위 방법: 1. SQL 문을 통해 모든 사용자의 순위를 매깁니다. 2. "SELECT b.uid, b.rownum FROM (SELECT t.*, @rownum:...)" 문을 통해 특정 사용자를 쿼리합니다. 특정 사용자의 순위만으로 충분합니다.

PHP mysql에서 순위를 쿼리하는 방법

이 기사의 운영 환경: Windows 7 시스템, PHP 버전 7.1, DELL G3 컴퓨터

php mysql의 순위를 확인하는 방법은 무엇입니까?

PHP+mysql은 순위를 구현하고 지정된 사용자의 순위를 쿼리합니다.

상황은 다음과 같습니다.

사용자 테이블에 있는 모든 사용자의 포인트 크기[포인트]에 대한 순위를 구현하고 특정 사용자의 특정 순위를 가져옵니다. points

1. 먼저 모든 사용자의 순위를 지정합니다.

$sql = "SELECT t.*, @rownum := @rownum + 1 AS rownum FROM (SELECT @rownum := 0) r,(SELECT uid,point FROM user ORDER BY `point` DESC) AS t ";
$sql = "SELECT t.*, @rownum := @rownum + 1 AS rownum FROM (SELECT @rownum := 0) r,(SELECT uid,point FROM user ORDER BY `point` DESC) AS t ";
로그인 후 복사

참고: 1. SELECT @rownum := 0: rownum에 초기 값 0을 할당함을 나타냅니다.

2. @rownum := @rownum + 1: 1을 추가함을 나타냅니다. rownum, 명령문은 1부터 시작하여 각 행에 자동으로 1을 추가합니다.

위 코드는 사용자 테이블의 포인트를 큰 것에서 작은 것 순으로 정렬합니다.

2. 특정 사용자의 순위를 가져옵니다

원리: 이전 단계에서 얻은 데이터를 테이블로 처리하고 uid

$sql = "SELECT b.uid,b.rownum FROM(SELECT t.*, @rownum := @rownum + 1 AS rownum FROM (SELECT @rownum := 0) r,(SELECT uid,point FROM user ORDER BY `point` DESC) AS t) AS b WHERE b.uid = {$uid} ";
로그인 후 복사

를 기반으로 특정 사용자의 순위를 쿼리합니다. 쿼리 결과: {"uid":" 300462", "rownum":"10"}

여기서 rownum은 사용자에 해당하는 순위입니다.

추천 학습: "PHP 비디오 튜토리얼"

위 내용은 PHP mysql에서 순위를 쿼리하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿