PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 27/01/2012 11:29:20

lionel
Membre

Problème de tri

Bonjour,
Je ne connais pas bien PostgreSQL.
Il y a une base où un problème de tri apparaît :

Le tri est problématique avec les espaces sur les libellés.

Exemple :
sur la requete : "SELECT lbpr_diff,sec_cod from libelleproduit where mar_cod = 123 and sec_cod in (134,773) order by lbpr_diff"
le "POIREAU" est entre la "POIRE Alexandrine ..." et la "POIRE Beurrée..."

L'ordre souhaité est de considérer l'espace comme un caractère prioritaire sur les lettres : POIRE Alexandrine puis POIRE Beurrée et POIREAU alors que la caractère espace semble ignoré.

Il semble que le problème vient du fait que la base est mal localisée :
La localisation se vérifie avec la commande SQL "SHOW lc_collate;".
Le résultat actuel est "fr_FR.UTF-8"

Quelqu'un a-t-il une idée pour rétablir un tri correct ?

Cordialement,

Lionel

Hors ligne

#2 27/01/2012 11:38:08

lionel
Membre

Re : Problème de tri

J'oubliais, il s'agit de la version 8.3

Hors ligne

#3 27/01/2012 15:11:09

gleu
Administrateur

Re : Problème de tri

L'ordre souhaité est de considérer l'espace comme un caractère prioritaire sur les lettres : POIRE Alexandrine puis POIRE Beurrée et POIREAU alors que la caractère espace semble ignoré.

Oui, l'espace est ignoré dans le tri français.

Quelqu'un a-t-il une idée pour rétablir un tri correct ?

Il faut trouver la collation qui convient à votre besoin. Et comme vous êtes en 8.3, cela veut dire que vous devez recréer l'instance complète.


Guillaume.

Hors ligne

#4 30/01/2012 15:46:39

lionel
Membre

Re : Problème de tri

Merci beaucoup pour votre réponse détaillée.

Hors ligne

Pied de page des forums