Deux tables:
product, représentant des cartouches d'encres et qui -pour l'exemple- possède 2 champs: id et name
cartridgeCompatibility, représentant les modèles d'imprimantes compatibles avec la cartouche et qui possède aussi 2 champs: modelId et cartridgeId
Note: cartridgeCompatibility est une table de liaison qui gère les cartouches (par id) compatibles avec les modèles (par id) d'imprimantes.
Ma requête:
Le but:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SELECT p.`id`, p.`name`, COUNT(c.modelId) as qte_modele FROM `product` as p LEFT JOIN `cartridgeCompatibility` as c ON (c.cartridgeId = p.id) GROUP BY c.cartridgeId ORDER BY p.`name` ASC;
Faire afficher un tableau qui liste tous les produits, et qui pour chaque ligne, calcule combien de cartouches sont compatibles avec le produit.
Le problème
Simple ... et bien actuellement, avec cette requête, si un produit (cartouche) n'à pas de modèle d'imprimante associé, le produit ne sera tout simplement pas listé.
Et comme la commande "Associer une imprimante" est une action qui est associé au listing du produit, impossible de créer mes association sans changer le fonctionnement de mon paneau d'administration
Merci à l'avance de votre coup de pouce, j'espère avoir été clair et bref
Partager