Maison >base de données >tutoriel mysql >Comment puis-je trier les données MySQL avec des valeurs NULL à la fin ?

Comment puis-je trier les données MySQL avec des valeurs NULL à la fin ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-09 03:32:13637parcourir

How Can I Sort MySQL Data with NULL Values at the End?

Filtrage et tri MySQL NULL

Lors du classement des données dans MySQL à l'aide de ORDER BY, les valeurs nulles sont traitées comme 0, provoquant des incohérences dans l'ordre souhaité . Pour résoudre ce problème, envisagez d'utiliser une syntaxe spéciale pour forcer les valeurs nulles à la fin de la liste triée.

Pour trier les valeurs par ordre croissant et placer les valeurs nulles à la fin, utilisez la syntaxe suivante :

ORDER BY -position DESC

Cela inverse l'ordre ASC par défaut pour la colonne de position, traitant efficacement les valeurs nulles comme la valeur la plus élevée. En combinant cela avec un ordre DESC pour la colonne id, vous pouvez obtenir l'ordre souhaité :

SELECT * FROM tablename WHERE visible=1 ORDER BY -position DESC, id DESC

Cela donnera l'ordre suivant :

1, 2, 3, 4, NULL, NULL, NULL

N'oubliez pas que cette syntaxe est non documenté dans MySQL et peut ne pas être disponible dans toutes les versions. Pour une référence complète, reportez-vous à la documentation MySQL sur ORDER BY avec des indicateurs supplémentaires.

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