0

日時型の列を持つテーブルがあります

select * from mytable group by dateadded

しかし、日時の時間値を無視して日付部分のみを使用するようにグループ化したいと考えています。それから

2013-10-05 12:14:15
2013-10-05 19:15:20

両方とも同じです

 2013-10-05 00:00:00 

レコードは日ごとにグループ化されます。つまり、1 日に追加されたすべてのレコードが同じグループになります。

4

2 に答える 2

2
select * from mytable 
group by CONVERT(date, dateadded)
于 2013-10-05T09:20:05.677 に答える
0

juergen の回答は、SQL Server 2008 以降で機能します。SQL Server 2005 以下の場合は、次を使用します。

select * from mytable
group by DATEDIFF(d, dateadded, '1900-01-01')

または、少しハックだが完全に機能する:

select * from mytable
group by convert(int, dateadded)

は と互換性がないため、明らかにこれらの例は実際には機能しません。リストには、 からの式、またはその中の他の式の集約のみが必要です。select *group byselectgroup by

于 2013-10-05T21:33:28.020 に答える