SQL Tableau analyse croisée sur une année glissante

SQL Tableau analyse croisée sur une année glissante - SQL/NoSQL - Programmation

Marsh Posté le 24-06-2009 à 12:20:21    

Bonjour, je fais actuellement face a un probleme. J'ai réalisé une requete sous access pour obtenir un tableau danalyse croisée sur un an. Le problème c'est qu'il s'arrete au mois de décembre (en effet month(date())+9 est egale à 15, et il sarrete a 12.
 
voila ma requete:
TRANSFORM IIf(Sum(Montant) Is Null,0,Sum(Montant))
SELECT Classe
FROM Table
WHERE (((Montant)>0) AND ((Month([dateprevu])) Between Month(Date()) And Month(Date())+9))
GROUP BY Classe
PIVOT dateprevu;
 
si quelqu'un a une idée pour m'aider.  
merci d'avance

Reply

Marsh Posté le 24-06-2009 à 12:20:21   

Reply

Marsh Posté le 24-06-2009 à 14:09:10    

ben ton +9 faut le faire sur la date et pas sur le mois extrait de la date...

 

du coup qqchose du style:

Code :
  1. WHERE (((Montant)>0) AND ([dateprevu] Between Date() And Date()+9 Months)
 

reste a voir comment tu rajoute 9 mois sous access. (ca doit pas être très compliqué)

 


Edit: ya l'air d'y avoir une fonction AJDATE() qui a l'air de faire ce que tu veux... http://access.developpez.com/faq/? [...] xplicDates


Message édité par pataluc le 24-06-2009 à 14:13:19
Reply

Marsh Posté le 24-06-2009 à 15:52:33    

merci beaucoup pour la reponse,
le probleme cest que ma date est sous le format mmm-aa (ex juin-09), et je ne peux pas le modifier, donc si j'utilise le code  
 
WHERE (((Montant)>0) AND ([dateprevu] Between Date() And Date()+9 Months)     il ne prendra pas en compte mes valeurs, c'est pour cela que j'avais mis month(date())

Reply

Marsh Posté le 24-06-2009 à 17:25:08    

c'est quoi le type de ta colonne dateprevu?

Reply

Marsh Posté le 24-06-2009 à 17:29:59    

c'est un type personnalisé, proposé par access pour les dates: mmm-aa
Je l'aurai bien modifié mais je ne peux pas

Reply

Marsh Posté le 24-06-2009 à 18:09:15    

essaie de convertir en date dans ta requete, ensuite tu pourras faire ton ajout de 9 mois... ca me parait le plus propre.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed