Ich habe die unten Abfrage, die funktioniert, aber es scheint sehr unordentlich und ineffizient für mich.Wie man den Tag Teil eines Datums zu gruppieren Daten
Meine Tabelle hat zwei Spalten: TDate
& Sales
TDate Sales
2016-03-25 5
2016-03-24 8
2016-03-28 7
2016-04-21 2
2016-04-14 1
ich gruppieren möchten die Daten nach Jahr und Monat, das heißt ich über den Tag Teil des Datums nicht kümmern. Das Ergebnis (das die Abfrage unten gibt) lautet:
TDate Sales
201603 20
201604 3
Was ist der beste Weg, dies zu erreichen?
select left(convert(nvarchar, TDate, 112),6), sum(Sales)
from mytbl
group by left(convert(nvarchar, TDate, 112),6)
order by left(convert(nvarchar, TDate, 112),6)
ich sehe nicht ein Problem mit Ihrer Anfrage. –
scheint mir gut genug zu sein –
Ich stimme für das Schließen dieser Frage als Off-Thema, weil Ihr Code funktioniert - ich würde Ihnen empfehlen, versuchen Sie es bei CodeReview.se – Bridge