Jozza.net

Remove time values from a datetime value

I'm sick to death of programmers (and DBA's) using datetime = DAY(...) + '/' + MONTH(...) + '/' + YEAR(...) - it's just plain stupid.

-- pre-2008: remove time from date by rounding the numeric value down
DECLARE
    @getdate datetime = CAST(FLOOR(CAST(getdate() as float)) AS datetime)

-- post-2008: convert to date
DECLARE
    @getdate datetime = CAST(CAST(getdate() as date) AS datetime)

-- or just
DECLARE
    @getdate datetime = CAST(getdate() as date)