Thanks again. That was my understanding about how to do it but I was not having success. But now you have confirmed doubling the single quote should work I will (steal your code) <s> and go back and try it again.
>>Now a followup question. This is is very useful and I am trying to figure out how to do this passing in the table and column names as variable
>>
>>I think I need to build the expression as a string and then execute it, as just subsituting @colname for CID in the code below doesn't work (just returns the value of @colname for all rows)
>>
>>Since the string contains single quotes, I tried escaping each single quote with another single quote. Tried using Double Quote around the string I'm building. Not sure how to go about this
>>
>>
>>DECLARE @colname VARCHAR(100) = 'cid'
>>DECLARE @tblname VARCHAR(100) = 'caccount_credits'
>>DECLARE @str VARCHAR(max) = ''
>>
>>SELECT @str = @str + 'SELECT CASE WHEN NOT (' + @colname + ' LIKE expression + '
>>
>>????
>>
>
>
>
>DECLARE @colname VARCHAR(100) = 'cid'
>DECLARE @tblname VARCHAR(100) = 'caccount_credits'
>DECLARE @str VARCHAR(max) = ''
>
>SET @str = '
>SELECT CASE
> WHEN NOT ('+@colname+' LIKE expression + ''%'' OR '+@colname+' LIKE ''{'' + expression + ''}%'') THEN '+@colname+'
> END
>FROM '+@tblname+' T
> CROSS APPLY (SELECT REPLACE(''00000000-0000-0000-0000-000000000000'', ''0'', ''[0-9a-fA-F]'')
> COLLATE Latin1_General_BIN) C2(expression)
>WHERE NOT ('+@colname+' LIKE expression + ''%'' OR '+@colname+' LIKE ''{'' + expression + ''}%'')'
>
>SELECT @str
>
Charles Hankey
Though a good deal is too strange to be believed, nothing is too strange to have happened.
- Thomas Hardy
Half the harm that is done in this world is due to people who want to feel important. They don't mean to do harm-- but the harm does not interest them. Or they do not see it, or they justify it because they are absorbed in the endless struggle to think well of themselves.
-- T. S. Eliot
Democracy is two wolves and a sheep voting on what to have for lunch.
Liberty is a well-armed sheep contesting the vote.
- Ben Franklin
Pardon him, Theodotus. He is a barbarian, and thinks that the customs of his tribe and island are the laws of nature.