-1

私はこのクエリを持っています:

declare @startdate datetime='1/1/2012', @endate datetime='12/31/2012'
select * from hours1
where date_start between @startdate and @enddate

次のようなデータを表示したい:

Jan
feb
March
...
December

これを取得する方法を教えてください。

4

2 に答える 2

2

開始日から終了日までの月を表示したいと思います。

declare @startdate datetime='1/1/2012', 
        @endate datetime='12/31/2012'

SELECT
    DATENAME(month, date_start) 
FROM
    hours1
WHERE
    date_start between @startdate and @enddate
GROUP BY 
    DATENAME(month, date_start), 
    DATEPART(month, date_start)
ORDER BY
    DATEPART(month, date_start)
于 2013-03-11T21:38:45.627 に答える
0

月単位でデータを集計する場合は、日付関数を使用します。

select count(<count_grouped_items), sum(<sum_of_grouped_items>), ...

from hours1 
where date_start between @startdate and @enddate 
group by YEAR(date_start), MONTH(date_start) 
order by YEAR(date_start) asc, MONTH(date_starts) asc
于 2013-03-11T21:39:00.523 に答える