PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Trier la liste des tuples en tenant compte des paramètres régionaux (ordre suédois)

Lors de l'exécution du tri LC_ALL=sv_SE.UTF-8 sort sur votre exemple sur Ubuntu-10.04, il sort avec Wa avant Vb ("l'ancienne méthode"), donc Ubuntu ne semble pas être d'accord avec la "nouvelle méthode". Puisque PostgreSQL s'appuie sur le système d'exploitation pour cela, il se comportera exactement comme le système d'exploitation a reçu le même lc_collate.

Il existe en fait un correctif dans la glibc debian lié à ce problème de tri particulier :http:// sourceware.org/bugzilla/show_bug.cgi?id=9724 Mais cela a été contesté et non accepté. Si vous n'avez besoin de ce comportement que sur un système que vous administrez, vous pouvez toujours appliquer la modification du correctif à /usr/share/i18n/locales/sv_SE et reconstruire la locale se_SV en exécutant locale-gen sv_SE.UTF-8 . Ou mieux encore, créez vos propres paramètres régionaux alternatifs dérivés de celui-ci pour éviter de jouer avec l'original.