Как суммировать значения в столбце, сгруппированные по дате в SQL Server - PullRequest
0 голосов
/ 28 августа 2018

У меня есть следующее:

Name |Dur |DateTime  
Bill |10  |8/12/2018 07:00:00  
Sue  |4   |8/10/2018 09:00:00  
Joe  |23  |8/13/2018 07:15:00  
Bill |13  |8/13/2018 09:15:00  
Sue  |4   |8/10/2018 19:00:00  
Sue  |23  |8/13/2018 07:25:00  
Bill |10  |8/12/2018 15:18:00  
Sue  |4   |8/11/2018 13:00:00  
Joe  |23  |8/14/2018 07:15:00

Я хочу закончить с:

Name |Tot|Date  
Bill |20 |8/12/2018  
Bill |13 |8/13/2018  
Sue  | 8 |8/10/2018  
Sue  | 4 |8/11/2018  
Joe  |23 |8/13/2018  
Joe  |23 |8/14/2018  

Таким образом, в основном, суммируйте Dur каждый день, для каждого Имени.

Я пытался:

SELECT  
    Name,  
    SUM([Dur]) AS Tot,  
    (CONVERT(VARCHAR, [DateTime], 101)) AS sDateTime  
FROM 
    DailyTransactions   
GROUP BY 
    DATEADD(day, DATEDIFF(day, 0, DateTime), 0), Name 

Ответы [ 2 ]

0 голосов
/ 29 августа 2018

Это должно сделать вашу работу

   SELECT  
        Name,  
        SUM([Dur]) AS Tot,  
        cast(DateTime as Date) AS Date  
    FROM 
        DailyTransactions   
    GROUP BY 
        cast(DateTime as Date), Name
0 голосов
/ 28 августа 2018

Вы были близки ... просто сгруппировались по той же логике, которую использовали при преобразовании столбцов.

SELECT  
    Name,  
    SUM([Dur]) AS Tot,  
    (CONVERT(VARCHAR, [DateTime], 101))AS sDateTime  
FROM 
    DailyTransactions   
GROUP BY 
    (CONVERT(VARCHAR, [DateTime], 101))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...