sqlserver树查询,sql 树

sqlserver查询树形结构的所有子节点

sqlserver查询树形结构的所有子节点

网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、小程序设计、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了姑苏免费建站欢迎大家使用!

用标准sql的with实现递归查询(sql2005以上肯定支持,sql2000不清楚是否支持):

with subqry(id,name,pid) as (

select id,name,pid from test1 where id = 5

union all

select test1.id,test1.name,test1.pid from test1,subqry

where test1.pid = subqry.id

)

select * from subqry;

sqlserver遍历树形目录

使用sqlserver递推查询,可以直接查询出来。

参考资料:

WITH lmenu(nav_id,nav_name,nav_parentid,level) as

(

SELECT nav_id,nav_name,nav_parentid,0 level FROM nav nav_parentid=0

UNION ALL

SELECT A.nav_id, A.nav_name,a.nav_parentid, b.level+1 FROM gs_nav A,lmenu b where a.nav_parentid= b.nav_id and nav_id = 10

)

SELECT * from lmenu

具体SQL语句还需要自己验证一下,上面的自己看着乱写的。

sqlserver2008树查询,急急急,求大神教育

你这写法是正确的,至少递归的数据已达到.只是显示方式不一样.

加个记录字段,并按记录字段排序即可完成以下效果:

--修改如下:

WITH rec(warecode,waresupercode,waerName,sort)

as

(

select warecode,waresupercode,waerName,warecode from DIC_WARE dw where dw.waresupercode IS NULL

UNION all

SELECT warecode,waresupercode,waerName,sort+'| '+warecode

from DIC_WARE a ,rec b on a.waresupercode=b.warecode

)

SELECT warecode,waresupercode,waerName

FROM rec order by sort

GO

测试数据效果图下:

希望能帮到你!


网站标题:sqlserver树查询,sql 树
分享URL:http://cdiso.cn/article/hdesci.html

其他资讯