[résolu][sql] Requête avec WHERE

OTP

WRInaute accro
Bonsoir,

Je cherche à faire une requête pour obtenir les enregistrements pour lesquelles le champ "date" vaut, par exemple 1992, sachant que le champ n'est pas formaté comme une date mais comme un texte, par exemple comme suit :

2002, 2002/11, 1995, 2001/05/28...

Comment écrire ce qui suit le WHERE dans la requête ?

Merci d'avance,

Michaël
 

rudddy

WRInaute passionné
mon conseil : formate ton champ date comme il faut car même après tu auras besoin d'un index qui sera beaucoup plus optimisé ...
 

OTP

WRInaute accro
J'aimerais vraiment éviter de passer par ce point (trop de trucs à changer ; je sais, je traîne un boulet...)
 

rudddy

WRInaute passionné
je connais ce sentiment ...

tu sais que tu dois le faire, c'est pour ton bien et malgré cela, tu le fais pas ...
 

seebz

WRInaute impliqué
tu peux 'convertir' le type d'un champ à l'aide de CAST()

Ainsi, CAST(champ AS DATE) devrait te permettre d'utiliser > < et BETWEEN
 

OTP

WRInaute accro
Ok, je vais regarder merci.
Mais il n'y a pas un truc simple pour prendre les 4 premiers caractères du contenu du champ ?

Edit : je regarde LEFT(str,len) ...
 

Discussions similaires

Haut