2

私はgroup by YEAR(mydate),MONTH(mydate)

のような一意のフィールドとしてそれらを選択したい

SELECT SUM(Price),YEAR(mydate) + '/' + MONTH(mydate)
FROM MyTable
GROUP BY YEAR(mydate), MONTH(mydate)

またはこのようなもの。

mydateですsmalldatetime

出来ますか?

4

5 に答える 5

7

これを試して:

SELECT cast(YEAR(mydate) as CHAR(4))+'/'+cast(MONTH(mydate) as varchar(2))
FROM MyTable
Group by YEAR(mydate),MONTH(mydate)
于 2012-08-03T09:22:34.743 に答える
2

それらを文字列に変換する必要があります

試す

SELECT convert(varchar(7), mydate ,111)
FROM MyTable 
GROUP BY convert(varchar(7), mydate ,111)
于 2012-08-03T09:22:50.570 に答える
0

MS SQL Server 2012 の場合、先行ゼロ付き:

CAST(YEAR(mydate) AS VARCHAR(4)) + '/' +
RIGHT('00' + CAST(MONTH(mydate) AS VARCHAR(2)), 2)
于 2016-08-03T15:20:19.983 に答える
-1
SELECT CAST(DATENAME(yy, mydate) AS CHAR(4)) + '-' + CAST(DATENAME(mm, mydate) AS VARCHAR(2)) 'Date'
 ,SUM(Price)
FROM [My Table]
GROUP BY DATENAME(yy, mydate)
 ,DATENAME(ww, mydate)
于 2016-07-04T06:28:38.943 に答える