MYSQL Inner Join deux table sur deux touches

Je suis en train de faire une requête pour renvoyer tous les utilisateurs des caddies, stockée dans la sb_carts table. Les informations de produit stocké dans sb_carts est référencé sur deux touches product_sku et school_id. Il doit faire référence à la fois pour retourner un produit unique unique avec des niveaux de stock etc.

Lorsque j'exécute la requête suivante, il retourne une ligne, je m'attends à 3 lignes.
J'ai essayé de casser la jointure interne en deux jointures mais cela renvoie toujours 1 seul résultat. joindre uniquement sur une clé a le résultat désiré, mais peut-être faut relancer le mauvais produit. Une jointure gauche renvoie 3 lignes, mais certaines données sont manquantes produit spécifique

Voici un exemple simplifié de ce que je fais

SÉLECTIONNEZ sb_carts.product_sku 
DE sb_carts 
INNER JOIN sb_products SUR sb_products.sku = sb_carts.product_sku 
ET sb_products.school_id = sb_carts.school_id 
OÙ sb_carts.order_id = 0 
ET sb_carts.user_id = 2 
GROUPE PAR sb_carts.cart_id 

La Requête Complète ressemble à

SELECT COUNT(DISTINCT sb_carts.cart_id) la quantité, la 
sb_carts.* DE sb_carts 
INNER JOIN sb_children SUR sb_children.child_id = sb_carts.child_id 
INNER JOIN sb_school_entities SUR sb_school_entities.school_id = sb_children.school_id 
INNER JOIN sb_products SUR sb_products.sku = sb_carts.product_sku 
ET sb_products.school_id = sb_carts.school_id LEFT JOIN sb_houses SUR sb_children.house_id = sb_houses.id 
LEFT JOIN sb_refund_cart SUR sb_carts.cart_id = sb_refund_cart.cart_id 
OÙ sb_carts.order_id = 0 
ET sb_carts.user_id = 2 
GROUPE PAR sb_carts.child_id, sb_carts.product_sku, sb_carts.school_id 
COMMANDE PAR sb_children.dob_year, sb_children.dob_month, sb_children.dob_day ASC