OVH Cloud OVH Cloud

Date et SQL

3 réponses
Avatar
Luc de Kin
Bonsoir,

J'essaye de faire une requête SQL pour calculer un "truc" entre 2 dates
(champs DU et AU qui se trouve sur une formulaire. Ca ne fonctionne pas !

SELECT
FROM DOSSIERS
HAVING (((DOSSIERS_Prestations.DPA_Date)>=[forms]![000_MAIN_MENU]![Du] And
(DOSSIERS_Prestations.DPA_Date)<=[forms]![000_MAIN_MENU]![Au]));

Merci pour les (bons) tuyaux...
Bonne soirée,

Luc

3 réponses

Avatar
Eric
Bonsoir,

Je suppose que tu n'as pas fourni tout le SQL, car un having sans group
by !!!

Ta clause Having pourrait ressembler à ceci:
HAVING DOSSIERS_Prestations.DPA_Date Between
Format([forms]![000_MAIN_MENU]![Du],"#mm/dd/yyyy#) And
Format([forms]![000_MAIN_MENU]![Au],"#mm/dd/yyyy#)

D'autre part, où crées-tu ce SQL ? Si c'est en VBA, il faudra sortir de
la chaine SQL les éléments variables à savoir les 2 Format(....) pour
les concaténer, du genre:
SQL = SQL & " Having DOSSIERS_Prestations.DPA_Date Between " &
Format([forms]![000_MAIN_MENU]![Du],"#mm/dd/yyyy#) & " And " &
Format([forms]![000_MAIN_MENU]![Au],"#mm/dd/yyyy#)

Bonsoir,

J'essaye de faire une requête SQL pour calculer un "truc" entre 2 dates
(champs DU et AU qui se trouve sur une formulaire. Ca ne fonctionne pas !

SELECT
FROM DOSSIERS
HAVING (((DOSSIERS_Prestations.DPA_Date)>=[forms]![000_MAIN_MENU]![Du] And
(DOSSIERS_Prestations.DPA_Date)<=[forms]![000_MAIN_MENU]![Au]));

Merci pour les (bons) tuyaux...
Bonne soirée,

Luc


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Eric
.../...
Il manque les guillemets fermant dans la fonction Format() suite à du
copier-coller:

HAVING DOSSIERS_Prestations.DPA_Date Between
Format([forms]![000_MAIN_MENU]![Du],"#mm/dd/yyyy#") And
Format([forms]![000_MAIN_MENU]![Au],"#mm/dd/yyyy#")

et :
SQL = SQL & " Having DOSSIERS_Prestations.DPA_Date Between " &
Format([forms]![000_MAIN_MENU]![Du],"#mm/dd/yyyy#") & " And " &
Format([forms]![000_MAIN_MENU]![Au],"#mm/dd/yyyy#")

Bonsoir,

Je suppose que tu n'as pas fourni tout le SQL, car un having sans group
by !!!

Ta clause Having pourrait ressembler à ceci:
HAVING DOSSIERS_Prestations.DPA_Date Between
Format([forms]![000_MAIN_MENU]![Du],"#mm/dd/yyyy#) And
Format([forms]![000_MAIN_MENU]![Au],"#mm/dd/yyyy#)

D'autre part, où crées-tu ce SQL ? Si c'est en VBA, il faudra sortir de
la chaine SQL les éléments variables à savoir les 2 Format(....) pour
les concaténer, du genre:
SQL = SQL & " Having DOSSIERS_Prestations.DPA_Date Between " &
Format([forms]![000_MAIN_MENU]![Du],"#mm/dd/yyyy#) & " And " &
Format([forms]![000_MAIN_MENU]![Au],"#mm/dd/yyyy#)



--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Eric
Bonjour,

En sql, les dates doivent être au format US.

Juste une question :

pourquoi : #mm/dd/yyyy# et pas #dd/mm/yyyy#") ???

Merci et @+




--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr