"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > 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 ?

Publié le 2024-11-08
Parcourir:322

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 selon l'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 :

SELECT *
FROM table
WHERE id IN (118, 17, 113, 23, 72)
ORDER BY FIELD(id, 118, 17, 113, 23, 72);

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

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3