Rechercher : dans
Par :

Requête MySQL

Dernière réponse le 30 oct 2008 à 21:55:34 barbouille a mal au crane, le 30 oct 2008 à 21:42:06 
 Signaler ce message aux modérateurs

Bonsoir,

Je suis un peu fatigué et je m'arrache les cheveux sur une requête MySQL

SELECT
prenom,
nom,
DATE_FORMAT(date_naiss,"%m%d") AS anniversaire,
YEAR(NOW())-EXTRACT(YEAR FROM date_naiss) AS age
FROM personnes
WHERE
( anniversaire BETWEEN DATE_FORMAT(DATE_SUB(CURDATE(),INTERVAL 3 DAY),"%m%d") AND DATE_FORMAT(DATE_ADD(CURDATE(),INTERVAL 5 DAY),"%m%d") )
AND statut >= 10
ORDER BY anniversaire ASC;


J'obtiens l'erreur :
ERROR 1054 (42S22): Unknown column 'anniversaire' in 'where clause'

Quand j'enlève la clause where, je n'ai aucun problème.

J'ai essayé avec une clause WHERE très simple du genre anniversaire>0 mais j'ai toujours la même erreur.

Je dois avoir de la m.... dans les yeux parce que je ne vois pas le problème.

1

lewis34, le 30 oct 2008 à 21:45:37

Bonsoir ton champ anniversaire existe t'il bien dans ta table ?

et verifie l'orthographe anniversaire est different de Anniversaire

Répondre à lewis34

2

barbouille a mal au crane, le 30 oct 2008 à 21:47:51

Ben non y a pas de colonne anniversaire mais je fais select de DATE_FORMAT(date_naiss,"%m%d") AS anniversaire

Répondre à barbouille a mal au crane

3

 lewis34, le 30 oct 2008 à 21:55:34

Ben c'est logique que ta requete coince alors tu demande de rechercher dans ta table personnes un champ anniversaire..
à mon avis il faudrait mieux reformuler ta requete differemment.
je pense que tu n'a pas besoin alias pour extraire ce que tu cherche.
tu t'embete pour rien il me semble

Répondre à lewis34