La fonction RANK() OVER() en SQL est utilisée pour attribuer des valeurs de classement aux enregistrements de données. Il accepte une clause ORDER BY spécifiant les colonnes à classer et l'ordre de tri. Les paramètres incluent : le nom de la colonne (colonne à classer), l'ordre de tri (croissant ou décroissant) et la manière dont les valeurs NULL sont traitées (première, dernière ou uniquement les valeurs non NULL). Cette fonction est utilisée pour attribuer le même rang ou un rang unique aux enregistrements avec la même valeur, et peut exclure ou gérer les valeurs NULL.
Utilisation de RANK() OVER() en SQL
La fonction RANK() OVER() est utilisée en SQL pour classer les données et attribuer une valeur de classement à chaque enregistrement. Cette fonction accepte une clause ORDER BY spécifiant les colonnes à classer et l'ordre de tri.
Syntaxe :
<code>RANK() OVER (ORDER BY 列名 [ASC|DESC] [NULLS FIRST|LAST|ONLY])</code>
Paramètres :
Utilisation :
La fonction RANK() OVER() est utilisée pour effectuer différents types de classements sur les données, notamment :
Exemple :
L'exemple suivant classe les enregistrements dans le tableau "Étudiants" en fonction de la colonne "Score", de haut en bas :
<code>SELECT *, RANK() OVER (ORDER BY 分数 DESC) AS 排名 FROM 学生;</code>
Les résultats sont les suivants :
Numéro d'étudiant | Nom | Score | Classement |
---|---|---|---|
1 | Xiao Ming | 95 | 1 |
2 | 小华 | 90 | 2 |
3 | Xiaoli | 85 | 3 |
4 | Xiaogang | 80 | 4 |
Remarques :
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!