• Here's the clear version of the code:

    IF (@phrase_type IS NULL OR @phrase_type = ' ')

    Instead, the original code uses:

    IF (ISNULL(@phrase_type, ' ') = ' ')

    The ISNULL(<value1>, <value2>) will replace a NULL value1 with value2, in this case ' '. If value1 is not null, it will return value1. With some review of the code, you can see that functionally it's the same as the code above, albeit less clear.

    SQL DBA,SQL Server MVP(07, 08, 09) A socialist is someone who will give you the shirt off *someone else's* back.