Surmonter l'absence de tri NULL par ordre décroissant
Dans PostgreSQL, trier les lignes avec des valeurs NULL jusqu'à la fin d'un tableau peut être difficile lors de l'utilisation de l'ordre décroissant.
Par défaut Comportement
Par défaut, les valeurs NULL sont triées jusqu'à la fin du tableau par ordre croissant. Cependant, lors du tri par ordre décroissant, l'inverse se produit et les valeurs NULL apparaissent au début des résultats.
NULLS LAST pour PostgreSQL 8.3
PostgreSQL 8.3 a introduit le Clause NULLS LAST, qui vous permet de spécifier explicitement que les valeurs NULL doivent être triées en dernier par ordre décroissant. La syntaxe est :
ORDER BY somevalue DESC NULLS LAST
Méthode alternative pour les anciennes versions
Pour les versions antérieures de PostgreSQL ou d'autres SGBDR sans syntaxe SQL NULLS LAST standard, vous pouvez utiliser ce qui suit solution de contournement :
ORDER BY (somevalue IS NULL), somevalue DESC
Puisque FALSE trie avant TRUE, les valeurs NULL (évaluées comme FAUX) sera trié en dernier 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!