正文
sqlserver父子,sql 父子查询
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
用java代码(或其他)实现路径图
这玩意sql 写 比较方便, 特别是sqlserver 2008 的递归写最方便, 使用与 父子递归 和丛属关系
sql 语句自查寻表中内容,父子关系反推
你要的最终结果是不是=1
如果是的话,看下面的代码
数据库: SQLServer2000
表名: tbl
列名: column1,column2
create procedure pro
@value int
as
if exists
(
select * from tbl t1 join tbl t2 on t1.column1=t2.column2 where t1.column1=@value
)
begin
select @value=t2.column1 from tbl t1 join tbl t2 on t1.column1=t2.column2 where t1.column1=@value
execute pro @value
end
else
select @value
go
execute pro 5;
go
我已经试过了,结果为1.
我的QQ 11575715.
ASP.NET SqlServer 检索系统
如果查询的字段是大长度的字段,那得建全文索引了。
全文索引开源的程序可以用。当然也可以用sqlserver自带的。
不过自带的好像只能给单独的表建全文索引,就是说不能多个表建一个索引。这样可能对你的取父子关系有些问题。
还是用自带的全文索引吧。操作简单些。
MS SQLServer 多级父子关系数据查询
加多一列层级码,会简单很多比如亚洲用‘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,...
写起来比较麻烦