有这样一个表,有pz,gg,xs三个字段,均为字符型,要求按pz,gg汇总,
pz gg xs
b90 20 101
b90 20 102
汇总后形成
b90 20 101,102
请问有没有不使用循环而直接汇总形成的语句。
pz gg xs
b90 20 101
b90 20 102
汇总后形成
b90 20 101,102
请问有没有不使用循环而直接汇总形成的语句。
解决方案 »
- 用Format批量格式化U盘遇到的问题
- 用API如何禁止一个窗口最大化
- 小问题,在线请教.
- 随机函数random的问题?
- 线程问题,很郁闷!
- 在Delphi里面如何把如TSpeedButton 做成数组。像VB里那样.这样他的事件写在一个里面就可以了。
- 各位前辈请赐教!!!!!!(这是一个值得思考的问题)
- 我的SMTP发的中文用OUTLOOL收是乱码,用163.NET收就没问题
- 有谁用过Delphi6带的InstallShield Express - Borland Limited
- 请问 TDateTimePicker 怎么用?
- 如何将Excel导入Access
- hjy2 := inttohex(hjy,4); 的结果如果溢出了,那怎么取高字节和低字节啊?
CREATE function f_sum(@pg varchar(50),@zz varchar(50))
returns varchar(8000)
as
begin
declare @str varchar(8000)
set @str = ''
select @str = @str + ', ' + xs from test2 where pg = @pg and zz=@zz
set @str = right(@str , len(@str) - 1)
return(@str)
End
然后调用该函数SELECT DISTINCT pg, zz, dbo.f_sum(pg, zz) AS Expr1
FROM test2
select pz,gg,sum(cast( xs as int)) as s_xs from 表 group by pz,gg
select wmsys.wm_concat(xs) from table group by pg, gg;