J'ai 3 tables produits, Ordre, Order_Placedjointure gauche donnant un résultat erroné
Products---------- Order---------------- Order_Placed
________________________________________________________
prod_id | -------| order_id | -------| prod_id |order_id|
1000----------------2001-------------------1000|2001
1001----------------2002-------------------1000|2002
1002--------------- 2003------------------1001|2001
Donc ma question est quelque chose comme ceci:
select P.Prod_ID, COUNT(*)
from PRODUCTS P
LEFT JOIN ORDER_PLACED OP
ON P.PROD_ID= OP.PROD_ID
group by ....
résultat aussi devrait être:
Prod_Id Count(*)
1001 2
1002 1
1003 0
Merci d'avoir répondu .... Y a-t-il un autre moyen d'obtenir le compte zéro? – Hitesh
Il vous a dit le chemin. Au lieu de COUNT (*), qui compte les lignes, utilisez COUNT (op.prod_id), qui compte les valeurs op.prod_id non nuls. Cela fonctionne car dans le LEFT JOIN, op.prod_id sera NULL s'il n'y a pas de ligne order_placed correspondante. – Frazz
yup a obtenu .... merci à vous tous les gars – Hitesh