sql >> Database >  >> RDS >> Sqlserver

Som van één kolomgroep op datumkolom

Wat als u het volgende gebruikt:

select SUM(WordCount) as 'words per day' 
from @WordsCount 
group by DateAdded

Ik begrijp niet waarom je ook groepeert op het aantal woorden....

Ook sinds de DateAdded waarschijnlijk is een DATETIME kolom met een tijdsgedeelte, wilt u misschien groeperen op alleen de datum:

select SUM(WordCount) as 'words per day' 
from @WordsCount 
group by CAST(DateAdded AS DATE)

Bijwerken: als ik dit probeer, werkt de query prima ....

DECLARE @WordsCnt TABLE (WordCount INT, DateAdded DATETIME)

INSERT INTO @wordsCnt(WordCount, DateAdded)
VALUES(96, '2008-11-07 09:16:31.810'),
      (32, '2008-11-07 15:26:27.547'),
      (25, '2008-11-23 16:05:39.640'),
      (62, '2008-12-03 12:33:03.110')

select CAST(DateAdded AS DATE), SUM(WordCount) as 'words per day' 
from @WordsCnt
group by CAST(DateAdded AS DATE)

en produceert de uitvoer:

2008-11-07   128
2008-11-23    25
2008-12-03    62


  1. Verbindingsreeksparameters voor opgeslagen specificaties

  2. Knip snaren automatisch op de juiste lengte bij het invoegen

  3. Queryresultaten retourneren als een door komma's gescheiden lijst in PostgreSQL

  4. Syntaxisfout:WITH is geen geldige invoer op deze positie