cudenetf
Messages postés448Date d'inscriptionmardi 20 septembre 2005StatutMembreDernière intervention26 juillet 2012
-
4 août 2009 à 11:06
cudenetf
Messages postés448Date d'inscriptionmardi 20 septembre 2005StatutMembreDernière intervention26 juillet 2012
-
12 août 2009 à 14:08
Bonjour, j'ai un souci avec une requete que j'aimerais effectuer
j'ai une table produit avec prod_id et prod_famille
et une table production avec p_prod ( = prod_id foreign key) et p_date et p_qte
je voudrais pouvoir selectionner des sommes sur des periodes ( semaine)
j'ai donc créé une requete :
select cast(datepart(wk,p_date) as varchar(2))+'-'+ cast(datepart(yy,p_date) as varchar(5)) as semaine,sum(p_qte) from production group by datepart(yy,p_date),datepart(wk,p_date))
order by datepart(yy,p_date),datepart(wk,p_date)
bon ca ca me donne le cumul de tous les produits
Maintenant je voudrais pouvoir faire la distinction sur les familles
j'ai deux familles
je voudrais donc 2 colonnes ds la reponse de ma requete avec sum(qte) de la famille1 as 'q1' et sum(qte) de la famille 2 as 'q2' ( 3 avec la colonne des dates ...)
bitangm
Messages postés13Date d'inscriptionjeudi 20 août 2009StatutMembreDernière intervention24 août 2010 11 août 2009 à 23:26
select
cast(datepart(wk,p1.p_date) as varchar(2)) +'-'+ cast(datepart(yy,p1.p_date) as varchar(5)) as semaine
, sum(p1.p_qte) As qte_total
, sum(case when p2.prod_famille = 1 then p1.p_qte else 0 end) as qte_fam_1
, sum(case when p2.prod_famille = 2 then p1.p_qte else 0 end) as qte_fam_2
from production p1 inner join produit p2 on p1.p_prod = p2.prod_id
group by datepart(yy,p1.p_date),datepart(wk,p1.p_date))
order by datepart(yy,p1.p_date),datepart(wk,p1.p_date)
cudenetf
Messages postés448Date d'inscriptionmardi 20 septembre 2005StatutMembreDernière intervention26 juillet 20122 12 août 2009 à 14:08
merci mais si j'ai un nombre "indeterminé" de familles ?
l'utilisateur peut en créer de nouvelles et j'aimerais que cela me donne toutes les familles quelque soit leur nombre.
Est ce possible ne une requete ou bien dois passer par une premiere requete pour recuperer les familles puis construire la commande ds mon programme ?