SQL 存储过程 游标高手请进

来源:百度知道 编辑:UC知道 时间:2024/05/12 04:27:40
有一张表---旅游路线
上海 深圳
北京 南昌
深圳 广东
广东 北京

求:用SQL语句写一个存储过程,并用游标返回路线“上海--深圳---广东----北京---南昌”
那就假设这条路线是固定的,不改变
建表的时候采用临时表
但这是一条旅游和路线啊,一个人要按这条路线去旅游啊,
真的会陷入死循环吗??但规定要用游标输出来啊.
记住用游标取数据,这是题目的限制
难道就没有游标高手?????
苦等了几天,还是没有高手的话,只有关闭问题了,
到底是百度里面没有高手,还是怎么回事,分不够????
要分的话是可以加的

给两个例子你参考一下:
例子一:
create table #T (id int, folder varchar(5), parentid int )
insert #T values (1,'AA',0)
insert #T values (2,'BB',1)
insert #T values (3,'CC',1)
insert #T values (4,'DD',3)

declare @id int
set @id=4
declare @path varchar(20)
select @path = folder, @id = parentid from #T where id = @id
while @id > 0
select @path = folder + '\'+@path, @id = parentid from #T where id = @id
select path=@path

drop table #T

--结果
/*
path
AA\CC\DD
*/

例子二:
--测试数据
create table tb(ID int,PID int,Name nvarchar(50))
insert tb
select 1, 0, '中国' union all
select 2, 1, '广东省' union all
select 3, 1, '湖南省' union all
select 4, 2, '广州市' union all
select 5, 2, '佛山市'