表1:字段1,字段2,字段3,字段4,字段5,字段6,字段7,字段8,字段9
表2:未建立
功能
1.可增加同级节点,下级节点,最高只加到第9级节点
2.增加内容:节点名称。第9级除了节点名称,还提供数量的输入。
3.每个节点都有个数量统计,统计各各节点所包含的子节点的数量总和。
例如:第9级有两个节点,分别为:张三,李四。张三做了10个任务,李四做了1个任务。
第8级有两个节点,分别为:王五,陈三。王五是张三,李四的父节点,那么王五的数量则为11.陈三因为没有子节点或所包含的子节点的任务之和为0,所以它的数量为0.以此类推……
最终显示结果为:
-节点1 <10>
- -节点11 <5>
- - -节点111 <0>
- - -节点112 <5>
- - - -节点1121 <5>
- - - - -节点11211 <5>
- - - - - -节点112111 <5>
- - - - - - -节点1121111 <5>
- - - - - - - -节点11211111 <5>
- - - - - - - - -节点112111111 <5>
- -节点12 <3>
- - -节点121 <3>
- - - -节点1211 <3>
- - - - -节点12111 <3>
- - - - - -节点121111 <3>
- - - - - - -节点1211111 <3>
- - - - - - - -节点12111111 <3>
- - - - - - - - -节点121111111 <2>
- - - - - - - - -节点121111112 <1>
- - -节点122 <2>
- - - -节点1221 <2>
- - - - -节点12211 <2>
- - - - - -节点122111 <2>
- - - - - - -节点1221111 <2>
- - - - - - - -节点12211111 <2>
- - - - - - - - -节点122111111 <2>
树的第一级的节点对应表1的字段1,第二级的节点对应表1的字段2,以此类推……
4.统计
select count(*) from 表1 Where 字段1='' and 字段2='' and 字段3=''
select sum(数量) from 表2 where 字段1='' and 字段2='' and 字段3=''
说明:因为树的第一级的节点对应表1的字段1,因此,两个语句用同一个条件
我自己做的方法
表2:ID 编号 名称 数量
利用编号进行判断主从关系。例如第一级别编号100,那么第二级编号为100100,第三级编号则为100100100,第三级的第2个节点编号则为100100101,以此类推……
树是被我用笨办法做出来了,可是到统计的时候发现对不上了,无法用同一条件语句进行统计。
11 个解决方案
#1
忘了一个功能:复制。
就是点选复制第一级别的,那么便复制所有那一级别的记录,如果点选第2级别的,那么便复制这一级别下所属的所有记录。以此类推……
就是点选复制第一级别的,那么便复制所有那一级别的记录,如果点选第2级别的,那么便复制这一级别下所属的所有记录。以此类推……
#2
增加一个级别深度的字段来处理。
#3
这样有个问题,比如:同样是级别深度是2的,那怎么判断它们各自所属的是那个级别深度1里的子节点呢?
#4
ID,名称,父ID,深度depth,备注
通过深度表示几级
通过深度表示几级
#5
id name
id pid name dep
id pid name dep
id pid name dep
.
.
.
.
.
.
pid是上一级的id
id pid name dep
id pid name dep
id pid name dep
.
.
.
.
.
.
pid是上一级的id
#6
学习。。
ps:用xml呢?
ps:用xml呢?
#7
我博客里面有个这样的树,不过是vb.net,而且没有写复制的功能!不过复制的功能很简单,你只要把*节点的父节点改下就可以了!
参考:
http://blog.csdn.net/chuxue1342/archive/2007/07/24/1704995.aspx
参考:
http://blog.csdn.net/chuxue1342/archive/2007/07/24/1704995.aspx
#8
大家都只想着树,但没考虑最终目的。
最终目的是要统计出两个数量,一个是表1中符合某查询条件的记录数,一个是表2中符合该查询条件的数量。
例如表1字段分别为:年度 季节 月份 学校 系别 专业 班级 性别 负责人
有记录: 09年 春季 04月 学校1 软件 WEB 2 男 张三
09年 春季 04月 学校1 软件 WEB 2 男 张三
09年 春季 04月 学校1 软件 WEB 2 女 张三
查询条件:年度=09年 季节=春季 月份=04月 学校=学校1 系别=软件 专业=WEB 班级=2 性别=男 负责人=张三
在表2中,第一级节点其中一个节点为:09年 第二级节点有一个节点为:春季 …… 第九级节点有个节点为张三,他做了3件事情
统计:满足查询条件的,在表1中有count(*)为2,在表2中sum(数量)则为3
目的就是为了查询两表中符合某同个查询条件的各自数量。
最终目的是要统计出两个数量,一个是表1中符合某查询条件的记录数,一个是表2中符合该查询条件的数量。
例如表1字段分别为:年度 季节 月份 学校 系别 专业 班级 性别 负责人
有记录: 09年 春季 04月 学校1 软件 WEB 2 男 张三
09年 春季 04月 学校1 软件 WEB 2 男 张三
09年 春季 04月 学校1 软件 WEB 2 女 张三
查询条件:年度=09年 季节=春季 月份=04月 学校=学校1 系别=软件 专业=WEB 班级=2 性别=男 负责人=张三
在表2中,第一级节点其中一个节点为:09年 第二级节点有一个节点为:春季 …… 第九级节点有个节点为张三,他做了3件事情
统计:满足查询条件的,在表1中有count(*)为2,在表2中sum(数量)则为3
目的就是为了查询两表中符合某同个查询条件的各自数量。
#9
绑定树在上一篇!你也可以看下!
#10
表1的数据结构已经定下来,不能更改的了
我们做查询不是要where 字段名='' and 字段名='' 吗?
那么要利用同一个查询条件,表2里是不是也必须要有跟表1一样的字段呢?
不然,查询表2时,不就会出现对象名无效吗?
我们做查询不是要where 字段名='' and 字段名='' 吗?
那么要利用同一个查询条件,表2里是不是也必须要有跟表1一样的字段呢?
不然,查询表2时,不就会出现对象名无效吗?
#11
一个表就可以搞定了嘛
ID PARENETID NAME LEVEL
这个结构可以满足需求了.
ID PARENETID NAME LEVEL
这个结构可以满足需求了.
#1
忘了一个功能:复制。
就是点选复制第一级别的,那么便复制所有那一级别的记录,如果点选第2级别的,那么便复制这一级别下所属的所有记录。以此类推……
就是点选复制第一级别的,那么便复制所有那一级别的记录,如果点选第2级别的,那么便复制这一级别下所属的所有记录。以此类推……
#2
增加一个级别深度的字段来处理。
#3
这样有个问题,比如:同样是级别深度是2的,那怎么判断它们各自所属的是那个级别深度1里的子节点呢?
#4
ID,名称,父ID,深度depth,备注
通过深度表示几级
通过深度表示几级
#5
id name
id pid name dep
id pid name dep
id pid name dep
.
.
.
.
.
.
pid是上一级的id
id pid name dep
id pid name dep
id pid name dep
.
.
.
.
.
.
pid是上一级的id
#6
学习。。
ps:用xml呢?
ps:用xml呢?
#7
我博客里面有个这样的树,不过是vb.net,而且没有写复制的功能!不过复制的功能很简单,你只要把*节点的父节点改下就可以了!
参考:
http://blog.csdn.net/chuxue1342/archive/2007/07/24/1704995.aspx
参考:
http://blog.csdn.net/chuxue1342/archive/2007/07/24/1704995.aspx
#8
大家都只想着树,但没考虑最终目的。
最终目的是要统计出两个数量,一个是表1中符合某查询条件的记录数,一个是表2中符合该查询条件的数量。
例如表1字段分别为:年度 季节 月份 学校 系别 专业 班级 性别 负责人
有记录: 09年 春季 04月 学校1 软件 WEB 2 男 张三
09年 春季 04月 学校1 软件 WEB 2 男 张三
09年 春季 04月 学校1 软件 WEB 2 女 张三
查询条件:年度=09年 季节=春季 月份=04月 学校=学校1 系别=软件 专业=WEB 班级=2 性别=男 负责人=张三
在表2中,第一级节点其中一个节点为:09年 第二级节点有一个节点为:春季 …… 第九级节点有个节点为张三,他做了3件事情
统计:满足查询条件的,在表1中有count(*)为2,在表2中sum(数量)则为3
目的就是为了查询两表中符合某同个查询条件的各自数量。
最终目的是要统计出两个数量,一个是表1中符合某查询条件的记录数,一个是表2中符合该查询条件的数量。
例如表1字段分别为:年度 季节 月份 学校 系别 专业 班级 性别 负责人
有记录: 09年 春季 04月 学校1 软件 WEB 2 男 张三
09年 春季 04月 学校1 软件 WEB 2 男 张三
09年 春季 04月 学校1 软件 WEB 2 女 张三
查询条件:年度=09年 季节=春季 月份=04月 学校=学校1 系别=软件 专业=WEB 班级=2 性别=男 负责人=张三
在表2中,第一级节点其中一个节点为:09年 第二级节点有一个节点为:春季 …… 第九级节点有个节点为张三,他做了3件事情
统计:满足查询条件的,在表1中有count(*)为2,在表2中sum(数量)则为3
目的就是为了查询两表中符合某同个查询条件的各自数量。
#9
绑定树在上一篇!你也可以看下!
#10
表1的数据结构已经定下来,不能更改的了
我们做查询不是要where 字段名='' and 字段名='' 吗?
那么要利用同一个查询条件,表2里是不是也必须要有跟表1一样的字段呢?
不然,查询表2时,不就会出现对象名无效吗?
我们做查询不是要where 字段名='' and 字段名='' 吗?
那么要利用同一个查询条件,表2里是不是也必须要有跟表1一样的字段呢?
不然,查询表2时,不就会出现对象名无效吗?
#11
一个表就可以搞定了嘛
ID PARENETID NAME LEVEL
这个结构可以满足需求了.
ID PARENETID NAME LEVEL
这个结构可以满足需求了.