Erik Darling shows why you don’t want to use YEAR()
or MONTH()
in the WHERE
clause when querying a large table:
If you’ve been query tuning for a while, you probably know about SARGability, and that wrapping columns in functions is generally a bad idea.
But just like there are slightly different rules for CAST and CONVERT with dates, the repercussions of the function also vary.
The examples I’m going to look at are for YEAR() and MONTH().
Read the whole thing. Maybe “go to brunch” in the middle of it for maximum effect.