| 发表于:2007-03-01 14:37:461楼 得分:30 |
--建立測試環境 create table a (queueid int, queuename varchar(10)) insert a select 1, 'aaa ' union all select 2, 'bbb ' union all select 3, 'ccc ' create table b (queueid int, [user] varchar(10), age int) insert b select 1, 'mike ', 11 union all select 1, 'tom ', 12 union all select 1, 'sam ', 14 union all select 2, 'lily ', 15 union all select 2, 'lucy ', 10 union all select 3, 'pike ', 13 go --建立函數 create function getuserinfo(@queueid int) returns varchar(8000) as begin declare @s varchar(8000) select @s = ' ' select @s = @s + ', ' + [user] + '( ' + rtrim(age) + ') ' from b where queueid = @queueid select @s= stuff(@s, 1, 1, ' ') return @s end go --建立視圖 create view v_list as select queueid, queuename, dbo.getuserinfo(queueid) as userinfo from a go --測試 select * from v_list go --刪除測試環境 drop table a,b drop function getuserinfo drop view v_list --結果 /* queueid queuename userinfo 1 aaa mike(11),tom(12),sam(14) 2 bbb lily(15),lucy(10) 3 ccc pike(13) */ | | |
|