2010-11-10 31 views
1

suppose donc que j'ai une table catégories nommée ... il contient ... eh bien ... catégorieséléments de comptage d'un arbre de catégorie à plusieurs niveaux qui appartiennent à un certain arbre de niveau supérieur dans MYSQL

catégories de table contiennent des champs 'id', 'name' et 'parentID'

Table Categories: 
id name  parentID 
1 cat1  null 
2 cat2  null 
3 cat3  null 

En outre, il contient également des sous-catégories qui sont des catégories enfants des catégories ci-dessus. Alors:

Tableau Catégories:

id name  parentID 
1 cat1  null 
2 cat2  null 
3 cat3  null 
4 cat4  1 
5 cat5  1 
6 cat6  2 
7 cat7  2 
8 cat8  3 
9 cat9  3 

Et supposons que nous avons des éléments qui appartiennent à des catégories ..... nous avons donc l'élément de table:

id name catID 
1 boo 9 
2 kya 8 
3 muwa 6 
4 haha 7 

et je veux compter le nombre d'éléments appartenant à une certaine catégorie, y compris ses sous-catégories. Donc, si je veux compter les objets qui appartiennent à cat3, il faut retourner 2 items puisque boo et kyaa appartiennent à la catégorie 9 et 8 qui sont à leur tour sous-catégories de cat3 ...

quelle requête mysql me recommanderiez-vous d'exécuter pour aller à propos de mettre en œuvre cela?

Répondre

0

http://dev.mysql.com/tech-resources/articles/hierarchical-data.html

Note @jakoch: Le lien précédent ne sera plus valable. Pour une autre description, voir: http://mikehillyer.com/articles/managing-hierarchical-data-in-mysql/

+0

L'article explique comment récupérer des arbres de catégories, mais comment pouvez-vous l'appliquer à la question du PO? – jordanbtucker

+0

@Jordan: 'COUNT (*)' – stillstanding

+0

J'espérais un exemple réel qui montre comment trouver le nombre d '"items" qui appartiennent à une catégorie et ses sous-catégories. – jordanbtucker