Pour une rquete SQL

Fermé
amine - 20 août 2002 à 19:08
 cvitedit - 23 août 2002 à 11:39
salut !
bon, j'ai un problemme une requete SQL dont elle je n'ai pas trouver la solution je vais vous faire comprendre mon problemme
j'ai une relation composer de:
intervention(code, nbr_interv,date_interv,nature_interv)
et je veux grouper la somme de nbr_intrv par mois
j'ai essayer select sum(nbr_interv), extract (month from date_interv) from intervention.db group by extract (month from date_interv)
en faite je travail sur delphi 5 et cette instruction je lui ecris dans un query (composant de delphi).
je compte beaucoup sur vous alors SVP aider moi
merci.
A voir également:

4 réponses

teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011 1 793
21 août 2002 à 09:00
A tou zazar:
SELECT SUM(nbr_interv), month as month(date_interv) FROM ...GROUP BY month;

Si ca marche pas, ca aura au moins eu l'interet de remettre ton post en haut de l'affiche ;-)

ö,ö
\_/
0
resalut!
c'est toujour moi et je vous aporte une movaise nouvel la requete que vous m'avais donné ne marche pas c'est tjr le meme problemme vous n'aurez pas une autre astuce
en faite merci pour votre aide s'prouve que vous ete interecer
j'attend, merci.
0
teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011 1 793
21 août 2002 à 11:30
Re salut (enfin salut, j'avais manque de politesse/temps la premiere fois ;-) )
Apres une petite incursion dans MSDN, je te suggeres :

SELECT SUM(nbr), month as DATEPART(mm,date_interv) FROM ...GROUP BY month;

Si tu veux, tu peux mettre un seul m pour retourner 1 pour janvier a la place de 01...

Bonne chance

ö,ö
\_/
0
Salut,

La solution de Teebo a-t-elle fonctionnée ? Ca avait l'air pas mal.
Je crois qu'une requête SQL avec Group By ne peut avoir d'instruction imbriquée (comme "Extract"). En général, il faut utiliser directement les données de la base, telle que date_interv. Si tu veux regrouper sur le mois, alors il faut faire le comptage manuellement dans un programme et non dans un SQL intéractif. Mais je dit peut-être des conneries...
Une autre solution serait de créer une vue de la base de donnée avec une décomposition de date_interv en jour_interv, mois_interv et année_interv, puis de refaire le SELECT SUM à partir de cette vue.
Bon courage.


Plus vite tu parles, et moins on te contredit...
cvitedit.
0