• Christopher,

    You're absolutely right. I feel a bit embarrassed, but have to agree. Your counter example is actually in the list as option 1, so I have no excuse.

    So, it looks as though the one difference is how ISNULL will use a stricter version of the first element's data description, truncating the contents of the second element to that length. Compare successful option 3 with truncated option 6:

    Select coalesce(convert(char(10),@MyDate,101),'Date is Null') --returns 'Date is Null'

    Select isnull(convert(char(10),@MyDate,101),'Date is Null') --returns 'Date is Nu'

    Even though the CONVERT specifies 10 characters in both, only the ISNULL truncates the literal message.

    Thank you again for pointing out my confusion with option 5.