Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

SQL server 2008 vários problemas LIKE


Comece com o exemplo genérico e, em seguida, vou simular com alguns "union alls"
   select distinct Record from dbo.Records
     inner join dbo.Split('stack overflow', ' ') tokens 
       on records_table.Record like '%' + tokens.value + '%'

Então o que eu fiz abaixo foi zombar de alguns dados que são os "registros", bem como um retorno simulado da função dbo.Split, basicamente uma tabela de varchars com 'stack' e 'overflow' tokenizados em ' ' .
select distinct Name from (
 select 'stack' as Name
 union all
 select 'nope' as Name
 union all
 select ' stackoverflow' as Name
   ) records_table 
   inner join (
   select 'stack' as value
     union all
    select 'overflow' as value) tokens 
    on records_table.Name like '%' + tokens.value + '%'

Resultados:
stack
stackoverflow

Não há nada de especial na função dbo.Split e existem muitos exemplos de implementação por aí...