par
kevin73 » 05 nov. 2018, 15:32
Bonjour ,
pour ma base de donnée (stock) d'une boutique , mon soucis actuellement c'est la requête pour générer un Tableau du type :
BÉNÉFICE | Chiffre d'affaire | Gain produit | Gain total | Dépenses | CanalSat | Date(mois / année)
J'ai les tables suivantes :

avec cette réquête sql :
Code : Tout sélectionner
select sum(ca) as ca ,sum(gainproduit), sum(depenses) as depenses, sum(canalsat) as canalsat
from
(
select v.dateVente as dated , v.idBtq as idBtq ,0 as gainproduit ,0 as canalsat, 0 as depenses , (v.qteVendu * v.prixVente) as ca from ventes v
union all
select d.dateDep as dated, d.idBtq as idBtq , 0 as gainproduit ,0 as canalsat, d.montant as depenses , 0 as ca from depenses d
union all
select c.dateCanal as dated ,c.idBtq as idBtq , 0 as gainproduit ,c.gain as canalsat, 0 as depenses , 0 as ca from canal c
) x
where idBtq = 1
j'obtiens presque tout sauf le bénéfice des ventes et gain des produits car le gain des produits je dois faire une requête avec jointure :
Code : Tout sélectionner
SELECT sum(v.qteVendu-(v.prixVente-p.prixAprod)) FROM ventes v JOIN produits p ON v.idProd = p.idProd
mais j'arrive pas à inclure ça dans ma requête du coup je dois la réécrire complètement , j'ai essayé mais sans succès , quelqu'un pourrait m'aider ? merci d'avance
Bonjour ,
pour ma base de donnée (stock) d'une boutique , mon soucis actuellement c'est la requête pour générer un Tableau du type :
BÉNÉFICE | Chiffre d'affaire | Gain produit | Gain total | Dépenses | CanalSat | Date(mois / année)
J'ai les tables suivantes :
[img]https://www.developpez.net/forums/attachments/p424199d1541170806/bases-donnees/langage-sql/rapport-mensuel-logiciel-stock/hh.png/[/img]
avec cette réquête sql :
[code]select sum(ca) as ca ,sum(gainproduit), sum(depenses) as depenses, sum(canalsat) as canalsat
from
(
select v.dateVente as dated , v.idBtq as idBtq ,0 as gainproduit ,0 as canalsat, 0 as depenses , (v.qteVendu * v.prixVente) as ca from ventes v
union all
select d.dateDep as dated, d.idBtq as idBtq , 0 as gainproduit ,0 as canalsat, d.montant as depenses , 0 as ca from depenses d
union all
select c.dateCanal as dated ,c.idBtq as idBtq , 0 as gainproduit ,c.gain as canalsat, 0 as depenses , 0 as ca from canal c
) x
where idBtq = 1
[/code]
j'obtiens presque tout sauf le bénéfice des ventes et gain des produits car le gain des produits je dois faire une requête avec jointure :
[code]
SELECT sum(v.qteVendu-(v.prixVente-p.prixAprod)) FROM ventes v JOIN produits p ON v.idProd = p.idProd
[/code]
mais j'arrive pas à inclure ça dans ma requête du coup je dois la réécrire complètement , j'ai essayé mais sans succès , quelqu'un pourrait m'aider ? merci d'avance