Bonjour,
dans ma table carte, j'ai une donnée finval de type varchar(4) (ex: 0209=fevrier 2009).
seulement, je sois faire une requete qui me resors toutes les dates supérieures à '0110'. mais j'ai pas le bon résultat. Ne faut-il pas q je convertisse la date? si oui? comment la convertir?
merci;
Il aurait fallu que vos codification soient de la forme AAmm et non MMAA qui n'a aucun sens.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 select select a.FINVAL from carte a where (a.CAR_FINVAL > date('0110'))
De fait vous êtes obligé de faire :
Ce qui va être épouvantablement contre performant !
Code : Sélectionner tout - Visualiser dans une fenêtre à part WHERE SUBSTRING(a.CAR_FINVAL, 3, 2) + SUBSTRING(a.CAR_FINVAL, 1, 2) > SUBSTRING('0110', 3, 2) + SUBSTRING('0110', 1, 2)
A +
A cette requete, j'ai le résultat ci dessous:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 select CAR_FINVAL from gbs_carte where (SUBSTR(CAR_FINVAL, 3, 2) + SUBSTR(CAR_FINVAL, 1, 2) > SUBSTR('0110', 3, 2) + SUBSTR('0110', 1, 2));
j'utilise oracle sql+0510
0909
0909
0211
0310
0710
1010
0410
0710
0609
Tu es dans un forum SQL Server
Bonsoir!
pouvez vous mettre mon message dans Oracle-SQP plus?
Merci.![]()
Partager