首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

关于数据库的查询有关问题

2012-01-19 
关于数据库的查询问题table的子段如下:idint栏目ID,categoryNamenvarchar(50)栏目名称,upidint父栏目ID用

关于数据库的查询问题
table的子段如下:
id   int   栏目ID,
categoryName   nvarchar(50)   栏目名称,
upid   int   父栏目ID;

用sql语句如何获取所有栏目的子栏目呢(子栏目下还有子栏目)

[解决办法]
用第三范式建表就不会有这种问题。
[解决办法]
给个思路:

建一个结果临时表,
调用一个SP, 将结果插入临时表, 递归 , 返回临时表, OK.
[解决办法]
数据库设计不合理
[解决办法]
第三范式建表是什么,请明示。
[解决办法]
upid int 改了吧叫KeyNum
假设这样的树:
栏目1 keyNum:aa
栏目1子1 keyNum:aaaa
栏目1子2 keyNum:aaab
栏目1子3 keyNum:aaac
栏目1子3子1 keyNum:aaacaa
这样在查询的时候 要查询 栏目1的所有项目就 like keyNum 'aa% '
这样在查询的时候 要查询 栏目1子3 的所有项目就 like keyNum 'aaac% '



[解决办法]
这样说LZ明白了吗?我认为这种方法,是一种很垃圾的办法,既然是树,为什么不一级一级的看,非要点第一个看它所有的下属呢?
[解决办法]
to:skyyun(落枫飘零)
不会写存储过程,可以在程序中递归啊。
[解决办法]
我也给个思路吧.
在建表时采用编码的方式在区分栏目的层次
比如:是第一层主栏目的话就用01两位表示,第二层的话就在01后加上三位数表示,以此类推,就能把层次很好的表示出来.
这样做的话的好处就是你可以很方便的对层次里的内容进行查询

热点排行