Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[MySQL] Requète entre deux dates.

6 réponses
Avatar
kalimbra
Bonjour,

j'ai un petit problème avec une requète MySQL. Je veux sortir tous les
travaux entre deux dates, liées à un utilisateur..

voila mon code :

SELECT *, NomProjet
FROM Travaux LEFT JOIN Projets ON Travaux.RefProjet = Projets.RefProjet
WHERE `Date` >= DateDeb AND 'Date' <= DateFin AND RefUtil ='User'
ORDER BY HeureDeb ASC

Malheureusement il ne me filtre absolument pas les dates.. (j'obtiens
tous les travaux dans ce cas).. tous mes autres essais de syntaxes
provoque des erreurs.. :(

6 réponses

Avatar
Youenn BALLOUARD
kalimbra a écrit :
Bonjour,

j'ai un petit problème avec une requète MySQL. Je veux sortir tous les
travaux entre deux dates, liées à un utilisateur..

voila mon code :

SELECT *, NomProjet
FROM Travaux LEFT JOIN Projets ON Travaux.RefProjet = Projets.RefProjet
WHERE `Date` >= DateDeb AND 'Date' <= DateFin AND RefUtil ='User'
ORDER BY HeureDeb ASC

Malheureusement il ne me filtre absolument pas les dates.. (j'obtiens
tous les travaux dans ce cas).. tous mes autres essais de syntaxes
provoque des erreurs.. :(


Pourquoi tu n'utilises pas la fonction BETWEEN ?
Sinon il doit y avoir en effet un problème avec tes '' ou tes ``

cordialement.

--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Youenn BALLOUARD
Chef de Projets Informatiques
Groupe FINDIS

Tel. 02.41.96.68.77
Fax. 02.41.96.68.53


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Avatar
kalimbra

Pourquoi tu n'utilises pas la fonction BETWEEN ?



connaissais pas.. merci je vais regarder dans la doc MySQL

Sinon il doit y avoir en effet un problème avec tes '' ou tes ``



j'avoue humblement ne pas avoir trouvé de doc la dessus.:(


cordialement.

Avatar
kalimbra
Youenn BALLOUARD wrote:


Pourquoi tu n'utilises pas la fonction BETWEEN ?
Sinon il doit y avoir en effet un problème avec tes '' ou tes ``



bon j'ai essayé BETWEEN, mais ça n'arrange rien non plus..


SELECT *, NomProjet BETWEEN 'DateDeb' AND 'DateFin'
FROM Travaux LEFT JOIN Projets ON Travaux.RefProjet = Projets.RefProjet
WHERE `RefUtil` =User
ORDER BY HeureDeb ASC

il me filtre bien les utilisateurs, mais absolument pas les dates (que
je mettent les ' ou pas )




cordialement.

Avatar
Youenn BALLOUARD
kalimbra a écrit :
Youenn BALLOUARD wrote:


Pourquoi tu n'utilises pas la fonction BETWEEN ?
Sinon il doit y avoir en effet un problème avec tes '' ou tes ``



bon j'ai essayé BETWEEN, mais ça n'arrange rien non plus..


SELECT *, NomProjet BETWEEN 'DateDeb' AND 'DateFin'
FROM Travaux LEFT JOIN Projets ON Travaux.RefProjet = Projets.RefProjet
WHERE `RefUtil` =User
ORDER BY HeureDeb ASC

il me filtre bien les utilisateurs, mais absolument pas les dates (que
je mettent les ' ou pas )




cordialement.





Mais nopn le BETWEEN tu le mets en clause WHERE !!!!
Tu devrais aller faire un tour sur la doc de MySQL

--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Youenn BALLOUARD
Chef de Projets Informatiques
Groupe FINDIS

Tel. 02.41.96.68.77
Fax. 02.41.96.68.53


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Avatar
kalimbra

cordialement.





Mais nopn le BETWEEN tu le mets en clause WHERE !!!!
Tu devrais aller faire un tour sur la doc de MySQL




ben justement j'ai repris l'exemple de la doc.. eux le mette direct dans
le Select..

désolé, mais je débute vraiment en MYSQL
Avatar
mbfac
Bonjour

Deja il vaut mieux eviter de mettre des noms de champ avec des mot + ou -
reservés date ne me parait pas un bon choix
DateEntree ou DateNomTable serait plus judicieux
ensuite est-ce que DateDeb et bien en format AAAA-MM-JJ ?

Cordialement

Michel BERTRAND