MSSQL finds sub-nodes and parent nodes

Source: Internet
Author: User
Tags rowcount

-->Title:Generating test data -->Author:wufeng4552 -->Date :2009-09-30 08:52:38 set nocount on if object_id( ‘tb‘ , ‘U‘ ) is not null drop table tb go create table tb(ID int , ParentID int ) insert into tb select 1,0 insert into tb select 2,1 insert into tb select 3,1 insert into tb select 4,2 insert into tb select 5,3 insert into tb select 6,5 insert into tb select 7,6 -->Title:查找指定節點下的子結點 if object_id( ‘Uf_GetChildID‘ ) is not null drop function Uf_GetChildID go create function Uf_GetChildID(@ParentID int ) returns @t table (ID int ) as begin     insert @t select ID from tb where [email protected]     while @@rowcount<>0     begin        insert @t select a.ID from tb a inner join @t b        on a.ParentID=b.id and        not exists( select 1 from @t where id=a.id)     end return end go select * from dbo.Uf_GetChildID(5) /* ID ----------- 6 7 */ -->Title:查找指定節點的所有父結點 if object_id( ‘Uf_GetParentID‘ ) is not null drop function Uf_GetParentID go create function Uf_GetParentID(@ID int ) returns @t table (ParentID int ) as begin     insert @t select ParentID from tb where [email protected]     while @@rowcount!=0     begin       insert @t select a.ParentID from tb a inner join @t b         on a.id=b.ParentID and         not exists( select 1 from @t where ParentID=a.ParentID)     end    return end go select * from dbo.Uf_GetParentID(2) /* ParentID ----------- 1 0 */

MSSQL finds sub-nodes and parent nodes

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.