Ordre de trie alphabétique

cs_Pat35 Messages postés 59 Date d'inscription mercredi 3 septembre 2003 Statut Membre Dernière intervention 5 décembre 2007 - 16 févr. 2004 à 17:18
cs_Pat35 Messages postés 59 Date d'inscription mercredi 3 septembre 2003 Statut Membre Dernière intervention 5 décembre 2007 - 17 févr. 2004 à 18:02
Bonjour.
J'ai un problème avec oracle.
J'essaye de récupérer des données dans une table, et pour éviter de les trier moi-même a la lecture (gains de temps énorme), je les trie avec un ORDER BY.
Mais, quand il trie, oracle classe les lettres avant les chiffres alors que VB fait l'inverse, ce qui pose de gros problèmes dans mon appli.

Si quelqu'un avait une solution pour modifier d'une façon ou une autre la règle de tri d'oracle ça me rendrait un grand service.

Merci.

2 réponses

plaineR Messages postés 237 Date d'inscription mercredi 26 novembre 2003 Statut Membre Dernière intervention 6 décembre 2005 4
17 févr. 2004 à 10:14
C'est parce que ton paramètre Oracle NLS_SORT est défini à FRENCH (ou du moins ton NLS_LANGUAGE).

Si tu définis NLS_SORT=BINARY, il te triera dans le même ordre que VB (à savoir les nombres avant les lettres).

Pour plus d'infos cf. doc online ORACLE sur les paramètres NLS.
0
cs_Pat35 Messages postés 59 Date d'inscription mercredi 3 septembre 2003 Statut Membre Dernière intervention 5 décembre 2007
17 févr. 2004 à 18:02
Merci.

En exécutant la requête "ALTER SESSION SET NLS_SORT = BINARY" a l'ouverture de ma connexion, ça corrige définitivement mon problème.

Et maintenant, ça marche au poil.

Vraiment, merci plaineR.
0
Rejoignez-nous