这种数据保存形式可以读出json格式吗?

数据库表:tree
字段有:id   pid   name
保存的信息是树形式的内容。没有祖宗根节点,只有根节点和孩子结点。如:
1   1   a
2   1   aa1
3   1   aa2
4   4   b
5   4   bb
6   5   bbb

像这样的数据怎样才能读出json格式的tree形式数据呢?
如:
[{id:1,text:'a',children[{id:2,text:'aa1',leaf:true},{id:3,text:'aa2',leaf:true}]}]

我的难点关键是这个祖宗根节点不好处理。因为这里面存的根节点就是id和pid相同的节点。如何能将树全部读出来呢?

希望各位不吝赐教,万分感谢!

[url]http://atian25.iteye.com/blog/424196[/url]

这个应该用递归吧