comment faire 1 somme totale de sommes en 1 requete SQL? - SQL/NoSQL - Programmation
Marsh Posté le 07-09-2006 à 16:54:19
Rollup powwwa
Code :
|
Marsh Posté le 07-09-2006 à 17:09:44
merci !
mais j'utilise une base firebird et a priori ça ne marche pas, il comprend pas le rollup
Marsh Posté le 07-09-2006 à 17:27:15
je trouve ca original:
Code :
|
Marsh Posté le 07-09-2006 à 17:40:44
original mais efficace
Marsh Posté le 08-09-2006 à 10:12:39
je ne comprends pas trop le 'total', il fait reference a quoi dans ta requete betsamee ?
Marsh Posté le 08-09-2006 à 10:16:51
il ecrit simplement total dans le champ a cote du total et ceci afin que l union fonctionne
Marsh Posté le 08-09-2006 à 14:21:47
en je voudrai qu'il fasse une sorte de distinct, qu'1 stagiaire ai 1 ou plusieurs contrat je voudrai qu'il ne soit compté qu'une seule fois.
Marsh Posté le 08-09-2006 à 14:30:16
bin c'est ce que doit faire ton group by
Quel sgbd tu utilises?
Quelle est l'erreur complète renvoyé par la requête de betsamee? Car celle-ci doit être correcte ( seul pb, le premier champ remonté n'est pas du même type dans les deux requêtes de l'union, tu seras ptêt obligé de faire un cast en string de ton idstag)
Marsh Posté le 08-09-2006 à 14:48:37
betsamee a écrit : je trouve ca original:
|
UNION ALL pour éviter un tri inutile
Sinon, sous Oracle tu peux utiliser SUM (*) OVER ()
Marsh Posté le 08-09-2006 à 14:54:07
si ça avait été oracle, rollup aurait marché , non
remarque ça doit dépendre de la version ...
Marsh Posté le 08-09-2006 à 15:19:31
anapajari a écrit : bin c'est ce que doit faire ton group by |
ah voila je pense que le probleme est la.je vais essayer de voir comment ça marche le cast car je connais pas..merci!
c'est une base Firebird 1.5
d'apres ce que j'ai lu le rollup devrait marcher sur la 2.0 mais elle est encore en beta il me semble et n'est pas installée sur le serveur de prod pour le moment
Marsh Posté le 07-09-2006 à 16:48:23
voici les tables
STAGIAIRES : IDSTAG
CONTRATS : IDCONTRAT,IDSTAG
je voudrais faire , en resumé pour faire simple, pour chaque stagiaire je compte le nombre de contrats qu'il a, et avoir le total de ces sommes ensuite.
donc imaginons que tous mes stagiaires ont 2 contrats et qu'il y a 5 stagaires, je devrais avoir en resultat 10.
mais je ne vois pas comment faire ça.. !donc je viens voir par ici pour avoir un peu d'aide !