Méthode de classement des requêtes PHP MySQL : 1. Classez tous les utilisateurs via des instructions SQL ; 2. Interrogez un certain utilisateur via l'instruction "SELECT b.uid, b.rownum FROM (SELECT t.*, @rownum:...)" Le classement d’un utilisateur spécifique suffit.
L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur DELL G3
Comment vérifier le classement de php mysql ?
PHP+mysql implémente le classement et interroge le classement des utilisateurs spécifiés
La situation est la suivante :
Réaliser le classement pour la taille en points [point] de tous les utilisateurs dans la table des utilisateurs et obtenir le classement spécifique d'un certain utilisateur points
1. Tout d'abord, classez tous les utilisateurs
$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 ";
Notes : 1. SELECT @rownum := 0 : signifie attribuer une valeur initiale de 0 à rownum
2. @rownum := @rownum + 1 : signifie ajouter 1 à rownum, et l'instruction commencera par À partir de 1, chaque ligne ajoutera automatiquement 1
Le code ci-dessus triera les points de la table utilisateur de grand à petit.
2. Obtenez le classement d'un utilisateur spécifique
Principe : Traitez les données obtenues à l'étape précédente comme un tableau et interrogez le classement d'un utilisateur spécifique en fonction de l'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} ";
Résultats de la requête : {"uid": 300462", "rownum":"10"}
où rownum est le classement correspondant à l'utilisateur.
Apprentissage recommandé : "Tutoriel vidéo PHP"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!