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

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

成都创新互联公司凭借在网站建设、网站推广领域领先的技术能力和多年的行业经验,为客户提供超值的营销型网站建设服务,我们始终认为:好的营销型网站就是好的业务员。我们已成功为企业单位、个人等客户提供了成都做网站、成都网站建设服务,以良好的商业信誉,完善的服务及深厚的技术力量处于同行领先地位。

 
 
 
  1. --生成表  
  2. create table MENU(id int,mname char(50),parent int)  
  3.  
  4. --插入数据  
  5. insert into MENU   
  6. select 1,'新闻',Null union all  
  7. select 2,'房产',Null union all  
  8. select 3,'科技新闻',1 union all  
  9. select 4,'社会新闻',1 union all  
  10. select 5, 'IT新闻',3 union all  
  11. select 6, '航天新闻',3   
  12.  
  13. --实现查询新闻子孙树  
  14. Declare @s varchar(1000)   
  15. select @s=','+cast(id as varchar(20))+'' from MENU where id=1 
  16.  
  17. while  @@rowCount>0   
  18.  
  19. --charindex:返回字符串中指定表达式的起始位置  
  20.   select   @s=@s+','+cast(id as varchar) from MENU       
  21.             where charindex(','+cast(id as varchar)+',',@s+',')=0    
  22.    
  23.             and   charindex(','+cast(parent as varchar)+',',@s+',')>0   
  24.  
  25.  
  26. select * from MENU where charindex(','+cast(id as varchar)+',',@s+',')>0  
  27.  
  28. --删除表  
  29.  
  30. drop table MENU  

【编辑推荐】

查询表结构的SQL语句

使用SQL语句查询时间段

巧用SQL语句删除重复记录

批量执行SQL语句的示例

教您使用SQL语句修改SQL主键

网页标题:实现子孙树查询的经典SQL语句
URL分享:http://www.shufengxianlan.com/qtweb/news36/500186.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联