SQL Server - 日時型(DateTime)から、日付のみ取得する

時刻を切り捨てて日付のみにするには、CONVERT または CAST関数 で DateTime型 を Date型 に変換します。

日時型(DateTime)から、日付のみ取得する方法

CONVERT関数を使用する場合
日付 = CONVERT(DATE, 日時)
CAST関数を使用する場合
日付 = CAST(日時 AS DATE)
SQLServer2008より古い場合(Date型になるのではなく、時刻部分がゼロになります)
日時(時刻が00:00になる) = DATEADD(dd, 0, DATEDIFF(dd, 0, getdate()))

サンプルSQL

SELECT CONVERT(DATE, getdate())
--結果 = 2020-07-11
SELECT CAST(getdate() AS DATE)
--結果 = 2020-07-11
SELECT CAST(getdate() AS DATE)
--結果 = 2020-07-11 00:00:00.000
サンプルSQLの実行結果
サンプルSQLの実行結果

CONVERT と CAST の違い

どちらも型変換をする関数ですが、CONVERT は SQLServerの独自機能で、CAST は ISO に準拠しています。

検証環境

関連ページ