In working with client data you start to notice trends that raise flags in your mind. In my case I'm looking at data and seeing a lot of columns that have NULL in the column where a NULL doesn't mean "I don't know", it means "I was too lazy to put something here".
In the stored procedures to process the data and produce management level reports, almost every query begins with
And then most of the amount columns are referenced in the query like this:
ISNULL(t.some_amount, 0) AS some_amount
Now, when your tables have a small number of rows, it really won't hurt you, from a performance perspective. But as a business grows these practices are the start of major performance problems, as the query processor has to do a lot of extra work to clean the data as it processes each time it's needed.
Wouldn't it make more sense to keep it clean all the time, and eliminate these costly processes?