Counting number of children in hierarchical SQL data
        Posted  
        
            by 
                moontear
            
        on Stack Overflow
        
        See other posts from Stack Overflow
        
            or by moontear
        
        
        
        Published on 2010-02-26T09:51:49Z
        Indexed on 
            2012/11/18
            11:01 UTC
        
        
        Read the original article
        Hit count: 489
        
for a simple data structure such as so:
ID    parentID    Text        Price
1                 Root
2     1           Flowers
3     1           Electro
4     2           Rose        10
5     2           Violet      5
6     4           Red Rose    12
7     3           Television  100
8     3           Radio       70
9     8           Webradio    90
For reference, the hierarchy tree looks like this:
ID    Text        Price
1     Root
|2    Flowers
|-4   Rose        10
| |-6 Red Rose    12
|-5   Violet      5
|3    Electro
|-7   Television  100
|-8   Radio       70
  |-9 Webradio    90
I'd like to count the number of children per level. So I would get a new column "NoOfChildren" like so:
ID    parentID    Text        Price  NoOfChildren
1                 Root               8
2     1           Flowers            3
3     1           Electro            3
4     2           Rose        10     1
5     2           Violet      5      0
6     4           Red Rose    12     0
7     3           Television  100    0
8     3           Radio       70     1
9     8           Webradio    90     0
I read a few things about hierarchical data, but I somehow get stuck on the multiple inner joins on the parentIDs. Maybe someone could help me out here.
moon
© Stack Overflow or respective owner