Compare DATETIME and DATE ignoring time portion

datetime-conversion, sql, sql-server, sql-server-2008, t-sql

Solution

Use the `CAST` to the new `DATE` data type in SQL Server 2008 to compare just the date portion:

IF CAST(DateField1 AS DATE) = CAST(DateField2 AS DATE)

Problem

I have two tables where column `[date]` is type of `DATETIME2(0)`. I have to compare two records only by theirs Date parts (day+month+year), discarding Time parts (hours+minutes+seconds). How can I do that?

Original source