SQL Server 2005 で、タスクが開始された時間の表現を作成したいと考えています。実際の開始時刻である「2010-10-01 12:30:00.000」という日時があります。私が最後にしたいのは、タスクが開始された時間である「12:00」です。「30分」を無駄にする方法について何か良いアイデアはありますか?
3 に答える
0
これはあなたが望むことをします:
SELECT DATEADD(hh, DATEDIFF(hh, '20000101', [DateField]), '20000101')
于 2011-09-27T13:42:46.340 に答える
0
datetime 値から分/秒/ミルを削除したいだけで、datetime として保持したい場合は、DATEADD
/を使用しDATEDIFF
ます。
select DATEADD(hour,DATEDIFF(hour,0,`2010-10-01T12:30:00`),0)
どちらが返され2010-10-01T12:00:00
ます。
于 2011-09-27T13:40:50.037 に答える
0
declare @dt datetime
set @dt = '2010-10-01 12:30:00.000'
select convert(char(5), dateadd(hour, datediff(hour, 0, @dt), 0), 108)
結果:
12:00
日時として
declare @dt datetime
set @dt = '2010-10-01 12:30:00.000'
select dateadd(hour, datediff(hour, 0, @dt), 0)
結果:
2010-10-01 12:00:00.000
于 2011-09-27T13:47:41.550 に答える