3

先週、テーブルに追加された行の合計数を 1 日あたりに表示するスクリプトを (MS SQL Server 2008 R2 を使用して) 作成しようとしています。これを行うには、次のスクリプトを使用しました。

select date_published, count(customer_id)
from CustomerTable
WHERE date_published >=dateadd(day,datediff(day,0,GetDate())- 7,0)
GROUP BY date_published

このスクリプトは機能しますが、テーブルの date_published 列にも時刻を含める必要があるという問題があるため、計算時に date_published 列の日付部分のみをスクリプトに表示させる方法を理解する必要があります。合計。ご協力いただきありがとうございます。

4

3 に答える 3

1
select Convert(date,date_published), count(customer_id) 
from CustomerTable 
WHERE datediff(d,getdate(),date_published )>-7
GROUP BY Convert(date,date_published)
于 2012-09-21T14:23:52.977 に答える
1

次のように修正してみてくださいGROUP BY date_published

GROUP BY DATEADD(dd, 0, DATEDIFF(dd, 0, date_published))
于 2012-09-21T14:25:28.163 に答える
0
select cast(date_published as date) as date_published,
       count(customer_id) as count_customer_id
from CustomerTable
where date_published >= dateadd(day, -7, cast(getdate() as date))
group by cast(date_published as date)
于 2012-09-22T09:18:23.757 に答える