【交流】用变量的方法处理分类拼接字段值的解法。

victorycyz 2004-08-05 01:54:28

之前,在论坛上搜索这类问题的解答,都是用自定义函数的方法。刚才想了一个用变量的解法。贴上来让大家看看,仅供交流、讨论、参考。


declare @s varchar(8000),@i int

create table #t ( id int,s varchar(100))
insert #t select 1,'a' union select 1,'b' union select 2,'a'

select * into #t0 from #t order by id

set @s=''
set @i=-1

update #t0 set @s=case when @i=id then @s+','+s else s end, @i=id, id=@i,s=@s

select id,max(s) from #t0 group by id

drop table #t,#t0

...全文
336 8 打赏 收藏 举报
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
AntingZ 2004-08-05
好帖,标记一下
  • 打赏
  • 举报
回复
bflovesnow 2004-08-05
j 老师贴过 -_-
  • 打赏
  • 举报
回复
victorycyz 2004-08-05

已经有了,那就算了,结贴了。
  • 打赏
  • 举报
回复
pbsql 2004-08-05
sorry,看错了
  • 打赏
  • 举报
回复
pbsql 2004-08-05
不对,测试下面数据:
insert #t select 1,'a' union select 1,'b' union select 2,'a' union all select 1,'c'
  • 打赏
  • 举报
回复
zjcxc 2004-08-05
一楼

用临时表处理主要是为了解决7.0没有自定义函数的问题.
  • 打赏
  • 举报
回复
zjcxc 2004-08-05
这个以前就有写过,楼主没有注意到而已吧.
  • 打赏
  • 举报
回复
pbsql 2004-08-05
不错,不过要用临时表,有点不爽

没有用函数时调用简单
  • 打赏
  • 举报
回复
相关推荐
发帖
应用实例
加入

2.7w+

社区成员

MS-SQL Server 应用实例
申请成为版主
帖子事件
创建了帖子
2004-08-05 01:54
社区公告
暂无公告