Home > Database > Mysql Tutorial > SQL语句实现子孙树查询经典实例

SQL语句实现子孙树查询经典实例

WBOY
Release: 2016-06-07 14:54:31
Original
2154 people have browsed it

下面介绍的 SQL语句 非常 经典 ,该 SQL语句实现 子孙树 查询 ,该 SQL语句 可以直接在 查询 分析器中执行,供您参考。 --生成表 createtableMENU(idint,mnamechar(50),parentint) --插入数据 insertintoMENU select1,'新闻',Nullunionall select2,'房产',

下面介绍的SQL语句非常经典,该SQL语句实现子孙树查询,该SQL语句可以直接在查询分析器中执行,供您参考。

--生成表  

create table MENU(id int,mname char(50),parent int)  

 

--插入数据  

insert into MENU   

select 1,'新闻',Null union all  

select 2,'房产',Null union all  

select 3,'科技新闻',1 union all  

select 4,'社会新闻',1 union all  

select 5, 'IT新闻',3 union all  

select 6, '航天新闻',3   

 

--实现查询新闻子孙树  

Declare @s varchar(1000)   

select @s=','+cast(id as varchar(20))+'' from MENU where id=1 

 

while  @@rowCount>0   

 

--charindex:返回字符串中指定表达式的起始位置  

  select   @s=@s+','+cast(id as varchar) from MENU       

            where charindex(','+cast(id as varchar)+',',@s+',')=0    

   

            and   charindex(','+cast(parent as varchar)+',',@s+',')>0   

 

 

select * from MENU where charindex(','+cast(id as varchar)+',',@s+',')>0  

 

--删除表  

 

drop table MENU

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template