如何添加列中两个相似日期的值

时间:2019-07-17 12:48:27

标签: sql sql-server

如何将两个相似日期值的值加到一个

例如:

2019-15-07  120
2019-16-07  152
2019-16-07  120
2019-17-07  100

我想将 2019-17-07 的日期值添加到一个值中,例如 2019-17-07 152 + 120 。那是 2019-17-07 272 。谢谢。

检查我是否使用代码:

SELECT date, COUNT(*)
FROM getProcess
GROUP BY Date
HAVING ( COUNT(*) > 1 )

显示重复的日期。

1 个答案:

答案 0 :(得分:1)

执行SUM而不是计数:

SELECT date, SUM([myvalue])
FROM getProcess
GROUP BY Date

如果您要具体化数据并清除重复项,则可以将上述结果存储在临时表中,然后delete将找到的记录存储起来,并将它们与合计值一起插入:

SELECT date, SUM([myvalue]) [myvalue]
INTO #datasource
FROM getProcess
GROUP BY Date
HAVING ( COUNT(*) > 1 )

DELETE [dbo].[mytable] 
FROM [dbo].[mytable] MT
INNER JOIN #datasource DS
    ON MT.[date] = DS.[date]

INSERT INTO [dbo].[mytable]
SELECT *
FROM #datasource