Maison  >  Article  >  base de données  >  Comment trier les résultats SQL en fonction de l'ordre des clauses WHERE IN ?

Comment trier les résultats SQL en fonction de l'ordre des clauses WHERE IN ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-26 12:09:29154parcourir

How to Order SQL Results Based on WHERE IN Clause Order?

Tri des résultats selon l'ordre de la clause WHERE IN

Lors de l'utilisation de la clause WHERE IN dans SQL, les résultats sont généralement classés par ordre naturel de la colonne ordre (généralement croissant). Cependant, dans certains scénarios, vous préférerez peut-être que les lignes soient renvoyées dans le même ordre que celui spécifié dans la clause IN.

Solution : Classement par champ

Pour trier lignes selon l'ordre spécifié dans la clause WHERE IN, vous pouvez utiliser la fonction ORDER BY FIELD. Cette fonction prend deux arguments :

  • La colonne sur laquelle trier
  • Une liste de valeurs représentant l'ordre souhaité

Dans ce cas, vous pouvez utiliser la requête suivante pour trier les résultats par colonne ID, dans l'ordre spécifié dans la clause IN :

<code class="sql">SELECT *
FROM table
WHERE id IN (118, 17, 113, 23, 72)
ORDER BY FIELD(id, 118, 17, 113, 23, 72);</code>

Cette requête renverra les lignes dans l'ordre suivant : 118, 17, 113, 23, 72 .

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!

Déclaration:
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