Maison > base de données > tutoriel mysql > Comment prioriser les lignes avec une valeur spécifique dans les requêtes SQL ?

Comment prioriser les lignes avec une valeur spécifique dans les requêtes SQL ?

Linda Hamilton
Libérer: 2025-01-05 05:01:09
original
771 Les gens l'ont consulté

How to Prioritize Rows with a Specific Value in SQL Queries?

Renvoyer d'abord les lignes avec une valeur spécifique

Vous devez modifier votre requête pour hiérarchiser les lignes en fonction d'une valeur de colonne spécifique tout en conservant l'ordre alphabétique. pour les lignes restantes.

Pour y parvenir :

SQL Server, Oracle, DB2 et autres

Utilisez la syntaxe suivante :

ORDER BY CASE WHEN city = 'New York' THEN 1 ELSE 2 END, city
Copier après la connexion

Dans ce code :

  • L'instruction CASE crée une colonne de priorité :

    • Si ville équivaut à « New York », la priorité est 1.
    • Sinon, la priorité est 2.
  • ORDER BY trie les lignes :

    • D'abord, en fonction du priorité (les lignes avec « New York » viennent en premier).
    • Ensuite, par ordre alphabétique de la ville colonne.

Exemple

En utilisant la table fournie, cette requête :

SELECT *
FROM Users
ORDER BY CASE WHEN city = 'New York' THEN 1 ELSE 2 END, city;
Copier après la connexion

renverra la résultats suivants :

 - id - name -  city
 - 3    John    New York
 - 4    Amy     New York
 - 6    Nick    New York
 - 1    George  Seattle
 - 2    Sam     Miami
 - 5    Eric    Chicago
Copier après la connexion

Cette requête renvoie effectivement les lignes avec « New York » en premier, puis les classe par ordre alphabétique les lignes restantes par ville.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal