Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL
PostgreSQL Forum PostgreSQL. Avant de poster -> F.A.Q PostGreSQL Tutoriels PostGreSQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/04/2005, 15h31   #1
Nouveau Membre du Club
 
Inscription : novembre 2004
Messages : 128
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 128
Points : 28
Points : 28
Par défaut order by qui ne classe pas par ordre alphabetique

salut

voila mon soucis
je fais un select avec order by
mais le order by ne range pas vraiment dans l'ordre alphabétique
DDE
Dac
dev
Les majuscules passent en premier

comment faire pour éviter ça ? je voudrai
Dac
DDE
dev

Une variable à positionner ?
merci d'avance
le_ben est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/04/2005, 16h30   #2
Membre habitué
 
Inscription : mai 2002
Messages : 131
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 131
Points : 142
Points : 142
Si ce ne sont que les majuscules qui posent problème, la solution est simple :

Code :
ORDER BY lower(champ de tri)
Quentin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/04/2005, 16h35   #3
Nouveau Membre du Club
 
Inscription : novembre 2004
Messages : 128
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 128
Points : 28
Points : 28
niquel je tente ça, merci
mais a tout hasard saurais tu ce qu'il faut parametrer dans postgres
sur 2 versions de postgres différentes 7.4.5 -> ok
sur une autre inférieur mais 7.4.x quand même (je sais plus exactement) la différence se fait
le_ben est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/04/2005, 16h38   #4
Membre habitué
 
Inscription : mai 2002
Messages : 131
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 131
Points : 142
Points : 142
Citation:
Envoyé par le_ben
niquel je tente ça, merci
mais a tout hasard saurais tu ce qu'il faut parametrer dans postgres
sur 2 versions de postgres différentes 7.4.5 -> ok
sur une autre inférieur mais 7.4.x quand même (je sais plus exactement) la différence se fait
Rien compris, là, désolé. De quelle différence parles-tu ?
Quentin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/04/2005, 16h43   #5
Nouveau Membre du Club
 
Inscription : novembre 2004
Messages : 128
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 128
Points : 28
Points : 28
sur order by

postgresql 7.4.x donne
DDE
Dac
def

postgresql 7.4.5 donne
Dac
def
DDE
le_ben est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/04/2005, 17h06   #6
Membre habitué
 
Inscription : mai 2002
Messages : 131
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 131
Points : 142
Points : 142
Avec la version 8.0.1, j'obtiens le même résultat que toi avec la 7.4.5

Quant à savoir si ça se paramètre quelque part, je n'en ai aucune idée J'ai jeté un oeil dans postgresql.conf, mais j'ai rien vu qui permette de spécifier cela. Il s'agit peut-être d'une correction
Quentin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/04/2005, 20h26   #7
Nouveau Membre du Club
 
Inscription : novembre 2004
Messages : 128
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 128
Points : 28
Points : 28
mince, il faudrai vraiment que je sache en fait et je trouve nul part...
ou pourrai je chercher

j'ai fait un show all des deux versions mais je vois pas de différence à ce sujet
le_ben est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2005, 11h51   #8
Nouveau Membre du Club
 
Inscription : novembre 2004
Messages : 128
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 128
Points : 28
Points : 28
sinon:

comment faire un order by lower(....) avec un union
Code :
(SELECT a FROM b were c>4) union (SELECT a FROM b WHERE c<2) ORDER BY lower(a)
ne fonctionne pas
le_ben est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/04/2005, 15h46   #9
Nouveau Membre du Club
 
Inscription : novembre 2004
Messages : 128
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 128
Points : 28
Points : 28
Voici les 2 version de postgresql
7.4.5 et 7.3.7
l'utilisation de lower dans le order by pour que la version 7.3.7 ne prenne pas en compte les majuscules ne résoud pas complétement le problème car il reste les accents

La version 7.3.7 range par ordre alpahabétique sur un order by avec en premier les majuscules et en dernier les accents

order by (champ) =
DHG
Dde
dév

et order by lower(champ) =
Dde
DHG
Dév


snifff...
sur la 7.4.5 no problemo par contre
le_ben est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/04/2005, 16h17   #10
Nouveau Membre du Club
 
Inscription : novembre 2004
Messages : 128
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 128
Points : 28
Points : 28
j'ai une piste par la http://www.postgresql.org/docs/8.0/static/charset.html
le_ben est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h00.


 
 
 
 
Partenaires

Hébergement Web