码迷,mamicode.com
首页 > 数据库 > 详细

SQL CTE 递归 查询省,市,区

时间:2014-06-28 17:58:36      阅读:470      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   name   c   sql   

 IF OBJECT_ID(‘tb‘) IS NOT NULL 
  DROP TABLE tb
create table tb(id varchar(3) , pid varchar(3) , name varchar(10))
insert into tb values(‘001‘ , null  , ‘广东省‘)
insert into tb values(‘002‘ , ‘001‘ , ‘广州市‘)
insert into tb values(‘003‘ , ‘001‘ , ‘深圳市‘)
insert into tb values(‘004‘ , ‘002‘ , ‘天河区‘)
insert into tb values(‘005‘ , ‘003‘ , ‘罗湖区‘)
insert into tb values(‘006‘ , ‘003‘ , ‘福田区‘)
insert into tb values(‘007‘ , ‘003‘ , ‘宝安区‘)
insert into tb values(‘008‘ , ‘007‘ , ‘西乡镇‘)
insert into tb values(‘009‘ , ‘007‘ , ‘龙华镇‘)
insert into tb values(‘010‘ , ‘007‘ , ‘松岗镇‘)
GO
SELECT * FROM tb AS t

DECLARE @ID VARCHAR(3) 
--查询ID = ‘001‘的所有子节点
SET @ID = ‘007‘
;WITH Temp AS (
  SELECT id,pid,NAME FROM tb AS t WHERE t.id=@ID
  UNION ALL
  SELECT t2.id,t2.pid,t2.NAME FROM tb t2 INNER JOIN Temp tm on t2.pid=tm.ID
)
SELECT * FROM Temp AS t WHERE id!=@ID

 

SQL CTE 递归 查询省,市,区,布布扣,bubuko.com

SQL CTE 递归 查询省,市,区

标签:style   blog   color   name   c   sql   

原文地址:http://www.cnblogs.com/gguozhenqian/p/3797222.html

踩
(0)
赞
(0)
   
举报
评论 一句话评论(0)
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!