Select com like

05/03/2015

Como fazer um like comparadando dados de uma outra coluna? Exemplo:

ColunaI
CODIGO - DESCRICAO

COLUNAII
CODIGO - DESCRICAO


SELECT
*
FROM COLUNAII
WHERE COLUNAII.DESCRICAO LIKE COLUNAI.DESCRICAO (SUBSTRING PROS 3 PRIMEIROS CARACTERES)

Dvlpp3

Respostas

05/03/2015

Mariana Carvalho

Contribuindo...

[url]http://computabilidade.blogspot.com.br/2012/11/sql-server-operador-like.html[/url]
Responder Citar

05/03/2015

Jothaz

Não sei se entendi o que você quer, sou meio burro, mas segue um sugestão de como abordar a questão.

Sript:

declare @COLUNAI  table (
CODIGO int, 
DESCRICAO varchar(20))

insert into @COLUNAI (CODIGO, DESCRICAO) values (1,'automovel')
insert into @COLUNAI (CODIGO, DESCRICAO) values (3,'outro')
insert into @COLUNAI (CODIGO, DESCRICAO) values (2,'automato')

declare @COLUNAII table (
CODIGO int, 
DESCRICAO varchar(20))
insert into @COLUNAII (CODIGO, DESCRICAO) values (1,'automovel')
insert into @COLUNAII (CODIGO, DESCRICAO) values (2,'zunga')
insert into @COLUNAII (CODIGO, DESCRICAO) values (3,'filipeta')
insert into @COLUNAII (CODIGO, DESCRICAO) values (4,'automato')

SELECT	ii.codigo,
		ii.descricao
FROM @COLUNAII ii
WHERE  substring(ii.DESCRICAO ,1,3) in  (select substring(i.DESCRICAO ,1,3) 
										from @COLUNAI i )



Resultado:

codigo      descricao
----------- --------------------
1           automovel
4           automato
Responder Citar

05/03/2015

Mariana Carvalho

Jothaz, não estou reclamando, é que não sei bem sobre o assunto, mas cadê o like?
Responder Citar

05/03/2015

Jothaz

Jothaz, não estou reclamando, é que não sei bem sobre o assunto, mas cadê o like?


Neste caso substitui pelo IN, acho que funciona melhor (inclusive em performance) e como pode ser visto no post o resultado foi correto.

Agora como tudo em SQL pose-se abordar este problema de outras formas esta foi a forma mais simples que achei.
Responder Citar