Maison >base de données >tutoriel mysql >Comment trier les valeurs NULL dans PostgreSQL : premier ou dernier ?

Comment trier les valeurs NULL dans PostgreSQL : premier ou dernier ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-29 13:42:11361parcourir

How to Sort NULL Values in PostgreSQL: First or Last?

Ordre des valeurs NULL dans les tables PostgreSQL

Le tri des lignes avec des valeurs NULL jusqu'à la fin d'une table peut être une exigence courante dans la gestion des données. PostgreSQL propose plusieurs façons de gérer les valeurs NULL lors du tri, selon que vous souhaitez qu'elles apparaissent en premier ou en dernier.

Tri des valeurs NULL vers le haut (ordre décroissant)

Par défaut, les valeurs NULL sont triées en dernier par ordre croissant. Pour les trier par ordre décroissant et les faire apparaître en premier, les versions 8.3 et supérieures de PostgreSQL proposent la clause NULLS LAST.

ORDER BY somevalue DESC NULLS LAST

Tri des valeurs NULL jusqu'à la fin (ordre croissant)

Pour les versions de PostgreSQL antérieures à 8.3 et autres SGBDR sans la fonctionnalité NULLS LAST, vous pouvez utiliser la solution de contournement suivante :

ORDER BY (somevalue IS NULL), somevalue DESC

Cette expression profite du fait que FALSE (représentant les valeurs NULL) trie avant TRUE. Par conséquent, les valeurs NULL sont placées à la fin des résultats triés.

Ordre SQL NULL standard

La norme SQL stipule que les valeurs NULL doivent être triées en dernier par ordre croissant. et d'abord par ordre décroissant. Cependant, certains SGBDR peuvent ne pas respecter cette norme. PostgreSQL suit la norme par défaut, mais fournit la clause NULLS LAST pour contrôler explicitement le comportement de tri des valeurs NULL par ordre décroissant.

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