sql 语句中group by 不能将字符类型的字段值进行累计,有何办法?
如: TB1
AA XX
--- -----
DF K
DF J
DF P
GH K
LK O
...能否用SQL语句直接如下表:
aa xx
--- ---------------
df k,j,p(曾经有二位老师用SQL自定义函数邦我解决了,我却看不懂这个函数,只能囫囵吞枣)
如: TB1
AA XX
--- -----
DF K
DF J
DF P
GH K
LK O
...能否用SQL语句直接如下表:
aa xx
--- ---------------
df k,j,p(曾经有二位老师用SQL自定义函数邦我解决了,我却看不懂这个函数,只能囫囵吞枣)
CREATE FUNCTION FN_MERGER(@FIELD VARCHAR(100))
RETURNS VARCHAR(8000)
AS
BEGIN
DECLARE @NAME VARCHAR(8000)
SET @NAME=''
SELECT @NAME=@NAME+','+XX FROM TEST WHERE AA=@FIELD
RETURN STUFF(@NAME,1,1,'')
END
GOSELECT DISTINCT AA,DBO.FN_MERGER(AA) FROM TEST
首先建一个函数
然后只要写了
SELECT DISTINCT AA,DBO.FN_MERGER(AA) FROM TEST
这个语句就会通过函数调用达到你想要的结果了