Resultat différent entre client Unix et Windows
Bonjour,
J'exécute une requête SQL sur une base oracle 9.2.0.5 installée sur serveur Unix. L'ordre d'affichage des résultats est différent si le client oracle est sur Unix ou sur Windows. Le client Oracle sur Windows affiche dans l'ordre croissant la 1ere colonne IOLOTN (en fonction des autres paramètres de la commande).
Le client Oracle sur Unix affiche dans n'importe quel ordre la 1ere colonne IOLOTN (en fonction des autres paramètres de la commande).
Ci-dessous la requête que je ne peux pas modifier (hormis les valeurs).
Code:
1 2 3
| SELECT IOLOTN, IOLOTS, IOMCU, IOITM, IOMMEJ
FROM PRODDTA.F4108
WHERE ( IOITM = 716607.000000 AND IOMCU = ' 01M01' ) AND ( IOMMEJ >= 111089 AND IODLEJ <= 111089 ) ORDER BY IOITM ASC,IOMCU ASC,IOMMEJ ASC ; |
La plan d'exécution indique que la requête utilise un index dont voici les paramètres.
Code:
1 2 3
| IOITM NUMBER 1
IOMCU NCHAR 2
IOLOTN NCHAR 3 |
Ci-dessous le résultat obtenu avec le client Unix. La 1ere colonne n'est pas classée par ordre croissant.
IOLOTN IOLOTS IOMCU IOITM IOMMEJ
------------------------------ ------ ------------ ---------- ----------
0786K 01M01 716607 113276
0786B 01M01 716607 113276
0786E 01M01 716607 113276
Cette différence d'affichage entre Unix et Windows est-elle connue ?
Comment peut-on classer par ordre croissant la 1ere colonne sans devoir toucher à la requête SQL ? Faut-il créer un autre index ?
Merci d'avance