DECLARE @Table_Name VARCHAR(20) = 'table 1', @Update_Column VARCHAR(20) = 'Val4', @SQL NVARCHAR(MAX);SELECT @SQL = 'UPDATE '+QUOTENAME(@Table_Name)+CHAR(13)+CHAR(10)+'SET '+QUOTENAME(@Update_Column)+' = CASE WHEN ' +STUFF((SELECT ' OR ' +val FROM (SELECT name+'='+CHAR(39)+'.'+CHAR(39) FROM sys.columns WHERE object_id = OBJECT_ID(@Table_Name) AND name <> @Update_Column )a(val) FOR XML PATH(''), TYPE ).value('.','NVARCHAR(MAX)'),1,4,'')+' THEN '+CHAR(39)+'U'+CHAR(39)+' ELSE '+CHAR(39)+'u'+CHAR(39)+' END';EXECUTE sp_executesql @SQL;
;with cte (val1, val2, val3)as( select 'asdf', 'qwer', 'rtyu' union all select 'as.df', 'yt', 'hhg' union all select 'weret', '99t4.rtkg9', '')select case when CHARINDEX('.', val1 + val2 + val3) > 0 then 'U' else 'u' endfrom cte