OVH Cloud OVH Cloud

Liste de dates dans une requête

2 réponses
Avatar
JPG
Bonjour,

J'aimerais grace à :

Date Montant
31/01/07 100 €
28/02/07 250 €
30/09/07 325 €
Trouver :
1er trimestre 350
2nd trimestre 0
3ème trimestre 325
Sans avoir besoin d'une table qui stockerait toutes les dates.

1) je me sers des fonctions de dates dont parle Raymond sur son site
2) je n'obtiens pas de réponse pour le second trimestre car il n'existe pas
d'enregistrements.

Merci beaucoup pour votre aide.

2 réponses

Avatar
Eric
Bonjour,

Je ne vois pas de solution autre que de passer par une table
supplémentaire qui ne contiendrait que 4 enregistrements à savoir la
date correspondant au premier jour de chaque trimestre car la fonction
DatePart() ou PartDate() en Fr a besoin d'une date pour retourner le
rang du trimestre auquel elle appartient.
En supposant que tu crées cette table (tLaDate) avec un seul champ
LaDate (Date/Heure - Format Date, abrégé) dont voici le contenu:
LaDate
01/01/2007
01/04/2007
01/07/2007
01/10/2007

Soit Table1 ta table, LechpDate le champ date sur lequel tu appliques la
fonction DatePart() et le champ Montant. LE SQL de la requête serait
(requête Union)

SELECT "Trimestre " & DatePart("q",[LechpDate]) AS col1,
Sum(nz([Montant],0)) AS col2
FROM Table1
GROUP BY "Trimestre " & DatePart("q",[LechpDate ])
UNION
SELECT "Trimestre " & DatePart("q",[LaDate]) , 0
FROM tLaDate
WHERE DatePart("q",[LaDate])
NOT IN (
SELECT DatePart("q",[LechpDate])
FROM Table1
)
;


Bonjour,

J'aimerais grace à :

Date Montant
31/01/07 100 €
28/02/07 250 €
30/09/07 325 €
Trouver :
1er trimestre 350
2nd trimestre 0
3ème trimestre 325
Sans avoir besoin d'une table qui stockerait toutes les dates.

1) je me sers des fonctions de dates dont parle Raymond sur son site
2) je n'obtiens pas de réponse pour le second trimestre car il n'existe pas
d'enregistrements.

Merci beaucoup pour votre aide.




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

Avatar
Eric
.../...
La réponse est partie trop vite. Il faudrait rajouter un champ pour
s'assurer de l'année pour laquelle tu veux faire tes calculs.

Bonjour,

J'aimerais grace à :

Date Montant
31/01/07 100 €
28/02/07 250 €
30/09/07 325 €
Trouver :
1er trimestre 350
2nd trimestre 0
3ème trimestre 325
Sans avoir besoin d'une table qui stockerait toutes les dates.

1) je me sers des fonctions de dates dont parle Raymond sur son site
2) je n'obtiens pas de réponse pour le second trimestre car il n'existe pas
d'enregistrements.

Merci beaucoup pour votre aide.




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