treenode 数据更新 博客分类: 数据处理 treenodeleftright
程序员文章站
2024-03-20 09:07:40
...
1、用父节点的left更新,每次更新都会更新与其同级的子节点及 其父节点 及与其父节点同级的节点
if has parent
pleft = parent left
update left = left+2 where left >pleft
update right = right+2 where right>pleft
insert left=pleft +1 ,right = pleft +2
else
insert into left = max(right) +1, right = left +2
事例:
父节点1 : 1 2
插入子节点:父节点1为 1 4 ,子节点1为 2 3 ;
插入子节点:父节点1为 1 6 ,子节点1为 4 5,子节点2为 2 3;
插入父节点:父节点1为 1 6 ,子节点1为 4 5,子节点2为 2 3;父节点2为7 8;
插入子节点:父节点1为 1 8,子节点1为 4 5,子节点2为 6 7,子节点3为2 3;父节点2为 9 10;
2、用父节点的right更新,每次更新其父节点 及与其父节点同级的节点(建议使用)
if has parent
pright = parent right
update left = left+2 where left >= pright
update right = right+2 where right>= pright
insert left=pright ,right = pright + 1
else
insert into left = max(right) +1, right = left +2
事例:
父节点1 : 1 2
插入子节点:父节点1为 1 4 ,子节点1为 2 3 ;
插入子节点:父节点1为 1 6 ,子节点1为 2 3,子节点2为 4 5;
插入父节点:父节点1为 1 6 ,子节点1为 2 3,子节点2为 4 5;父节点2为7 8;
插入子节点:父节点1为 1 8 ,子节点1为 2 3,子节点2为 4 5,子节点3为6 7;父节点2为 9 10;
推荐阅读
-
treenode 数据更新 博客分类: 数据处理 treenodeleftright
-
小议领域模型(Domain Model)补充以及更新 博客分类: 领域模型 领域模型DAO数据结构iBATIS企业应用
-
Oracle_多条语句的更新操作 博客分类: 7.数据库
-
6个用于大数据分析处理的最好工具 博客分类: 大数据平台大数据应用大数据处理数据分析数据可视化 大数据大数据工具数据分析数据处理数据可视化
-
Hadoop和大数据:60款*开源工具 博客分类: 大数据平台大数据应用数据可视化大数据处理数据分析 大数据hadoop数据分析数据可视化人工智能
-
walter的drill笔试之二-安装与部署 博客分类: drill海量数据处理 drill安装部署分布式
-
mysql数据库字段类型timestamp随当前时间戳更新 博客分类: 数据库 mysqltimestamp
-
海量数据处理的常用思路和方法(转) 博客分类: 大数据 大数据
-
互联网时代的社会语言学:基于SNS的文本数据挖掘 博客分类: 大数据处理自然语言处理 数据挖掘互联网sns
-
大数据处理 博客分类: 大数据处理 大数据 算法