您的位置:首页 > 数据库

sqlserver查询树表某个节点所有的子节点

2016-05-31 13:33 281 查看
DECLARE
@s VARCHAR (MAX) SELECT
@s = ',' + CAST (kindid AS VARCHAR(20)) + ''
FROM
treetable
WHERE
kindid = '25'
WHILE @@ROWCOUNT > 0 SELECT
@s =@s + ',' + CAST (kindid AS VARCHAR)
FROM
treetable
WHERE
charindex(
',' + CAST (kindid AS VARCHAR) + ',' ,@s + ','
) = 0
AND charindex(
',' + CAST (parentkindid AS VARCHAR) + ',' ,@s + ','
) > 0 SELECT
kindid,
kindname,
parentkindid
FROM
treetable
WHERE
charindex(
',' + CAST (kindid AS VARCHAR) + ',' ,@s + ','
) > 0
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  sql sqlserver