sql语句怎样实现求在列中选择某些相同名称的行,对这些相同名称行的数据进行累加.
表类似如下:TypeNameAmountK1A100K2B100K2C80K1D60K3E120K3F150K2G100最后结果是:TypeNameAmountK1A,D...
表类似如下: Type Name Amount
K1 A 100
K2 B 100
K2 C 80
K1 D 60
K3 E 120
K3 F 150
K2 G 100
最后结果是: Type Name Amount
K1 A,D 160
K2 B,C,G 280
K3 E,F 270 展开
K1 A 100
K2 B 100
K2 C 80
K1 D 60
K3 E 120
K3 F 150
K2 G 100
最后结果是: Type Name Amount
K1 A,D 160
K2 B,C,G 280
K3 E,F 270 展开
5个回答
展开全部
给你一个网址:http://blog.sina.com.cn/s/blog_4517f4cc0100rrtz.html
看看,学习一下,就能动手做了.你下载保存即可.有问题再联系.
看看,学习一下,就能动手做了.你下载保存即可.有问题再联系.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
亲测可用:
CREATE FUNCTION MergeCharField(@Group varchar(255))
RETURNS varchar(8000)
AS
BEGIN
DECLARE @r varchar(8000)
SET @r=''
SELECT @r=@r+','+rtrim(Name) FROM A WHERE Type=@Group
RETURN(substring(@r,2,8000))
END
GO
--调用
select Type,dbo.MergeCharField(Type),SUM(amount) FROM A GROUP BY type
CREATE FUNCTION MergeCharField(@Group varchar(255))
RETURNS varchar(8000)
AS
BEGIN
DECLARE @r varchar(8000)
SET @r=''
SELECT @r=@r+','+rtrim(Name) FROM A WHERE Type=@Group
RETURN(substring(@r,2,8000))
END
GO
--调用
select Type,dbo.MergeCharField(Type),SUM(amount) FROM A GROUP BY type
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
大时代
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
只能通过存储过程了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不知道你的数据库,我就写一个oracle的:
select type,wm_concat(name) name,sum(amount) amount group by type
select type,wm_concat(name) name,sum(amount) amount group by type
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询