Consider we have the following query:
SELECT ModifiedDate FROM Contacts WHERE DATEDIFF(MINUTE, ModifiedDate, GETDATE()) > 0
This query uses the DATEDIFF function, and when we look at the query plan we can see a Index scan is being performed.
The issue with an index scan is that all rows are reviewed before returning a result
And now consider this query:
SELECT ModifiedDate FROM Contacts WHERE GETDATE() > ModifiedDate
Since we are not using a function in the WHERE clause, this query uses an Index seek.
An index seek is much more efficient then an index scan when there is an index on the column