J'ai un modèle de jeu imbriqué qui fonctionne pour mon site avec des éléments dans les sous-catégories et ainsi de suite. Cela fonctionne bien, sauf pour un problème que je ne peux pas contourner.Modèle de jeu imbriqué, compte les éléments dans les catégories
+---------+-----------------------------+
| item_id | item_name |
+---------+-----------------------------+
| 1 | Laptop |
| 2 | iPod Classic 80GB |
| 3 | iPod Classic 160GB |
+---------+-----------------------------+
+---------+-------------+
| item_id | category_id |
+---------+-------------+
| 1 | 4 |
| 2 | 2 |
| 3 | 2 |
+---------+-------------+
+-------------+--------------------+-----+-----+
| category_id | name | lft | rgt |
+-------------+--------------------+-----+-----+
| 1 | iPod | 1 | 6 |
| 2 | Classic | 2 | 3 |
| 3 | Nano | 4 | 5 |
| 4 | Computers | 7 | 8 |
+-------------+--------------------+-----+-----+
En utilisant la requête suivante:
SELECT parent.name, COUNT(product.item_id)
FROM Category AS node, Category AS parent, Item_Category AS product
WHERE node.lft BETWEEN parent.lft AND parent.rgt
AND node.category_id = product.category_id
GROUP BY parent.name
ORDER BY node.lft;
donne la sortie suivante:
+-----------------+------------------------+
| name | COUNT(product.item_id) |
+-----------------+------------------------+
| iPod | 2 |
| Classic | 2 |
| Computers | 1 |
+-----------------+------------------------+
En d'autres termes, tous les domaines qui ne sont pas produits en eux ne seront pas affichés . Maintenant, au problème, je veux les montrer avec le résultat COUNT() = 0. Comment ma requête chercherait-elle à rendre cela possible? :)
travaillé comme un charme :) – xintron
heureux d'apprendre que. –
Est-il possible de compter la profondeur des sous-catégories en même temps en utilisant cette requête? – xintron