节点父子关系nosql,从子节点往父节点查找

数据库父子节点问题,谁懂的帮一下

第一句:x的子树可能包括很多结点,但x仅仅是其子树根结点的直接前驱,对子树的其它结点来说,x仅仅是前驱,但不是直接的前驱。 第二句:王一不是子树,只是子树的根结点,构成子树所有结点里面的一个。“王一是老王的一棵子树”这句话不对,注意王一只是一个结点而已。对王一来说,它是老王的孩子,王一的孩子构成老王的孙子之类的。(注意这里的父子关系只是针对相邻的两层之间而言)

从网站建设到定制行业解决方案,为提供成都网站制作、网站建设、外贸网站建设服务体系,各种行业企业客户提供网站建设解决方案,助力业务快速发展。创新互联将不断加快创新步伐,提供优质的建站服务。

如何用sql查找出父子关系关联的结果集

加多一列层级码,会简单很多比如亚洲用‘01’ 中国用‘0101’,北京用‘010101‘,海定用‘01010101’,东城用’01010102‘

这样语句可以

select id as col1,(select name from 表 where code = SubString(a.Code, 1,2)) as col2,

(select name from 表 where code = SubString(a.Code, 3,2)) as col3,

(select name from 表 where code = SubString(a.Code, 5,2)) as col4,

(select name from 表 where code = SubString(a.Code, 7,2)) as col5

from 表 a where Type = 'Distric'

不然

(select d.name from 表 b, 表 c, 表 d where a.parentid = b.id and b.parentid = c.id

and c.parentid = d.id) as col2,...

写个从父子节点查出目录的SQL

不是很明白你的问题,如果说前台每次点击一个目录展开调用ajax的话,直接将当前节点的id传入到后台,然后返回结果不就可以了么,直接写slq

select * from table where parent_id = input_id //input_id就是传入的id

如果一次性查出所有结果的话

一级树结构的:select * from table where parent_id is null

二级树结构的:select * from table where parent_id in (select id from table where parent_id is null)

三级树结构的:select * from table where parent_id in (select id from table where parent_id in (select id from table where parent_id is null))

类似的以此类推呗,但是所有数据都查询出来后到前台还需要进一步分类,比较麻烦吧。


分享名称:节点父子关系nosql,从子节点往父节点查找
网站链接:http://scyanting.com/article/dsihgep.html