Usuário com melhor resposta
Ajuda com o Like

Pergunta
-
Pessoal tenho um consultas q estou usando o like mais n está retornando nada:
SELECT f.FaturaID,f.Descricao,L.Descricao
FROM Fatura F inner join FIN_LANCAMENTOSIMPLES L on l.Descricao like '%'+f.Descricao+'%'
Mais quando removo o f.descricao e coloco a descricao funciona.
SELECT f.FaturaID,f.Descricao,L.Descricao
FROM Fatura F inner join FIN_LANCAMENTOSIMPLES L on l.Descricao like '%BT ASSISTENCIA%'
Respostas
-
Então, ou vc "converte" igualando os tipos de dados na estrutura da tabela, ou converte no Select.
A função é RTRIM()
- Sugerido como Resposta Cláudio Más sexta-feira, 17 de dezembro de 2010 17:48
- Marcado como Resposta ricardo_david sexta-feira, 17 de dezembro de 2010 19:48
Todas as Respostas
-
Ricardo,
SELECT f.FaturaID, f.Descricao, L.Descricao FROM Fatura F inner join FIN_LANCAMENTOSIMPLES L on l.Descricao like '%'+f.Descricao+'%' or f.Descricao like '%'+l.Descricao+'%'
Teste com um or, e diga se retorna alguma coisa..., pra ter certeza que vc estah aplicando o like no campo certo.
att.
Rafael Melo -
-
-
-
Sim, mas na sua instrução vc está buscando l.Descricao que contenha f.Descricao.
Se f.Descricao é maior que l.Descricao, l.Descricao nunca vai conter f.Descricao, e sim o inverso.
Desculpe se não me faço entender, mas acho que vc precisa rever a instrução.
-
-
-
-
-
Rapaz Observei algo.
F.descricao é varchar(25)
Executei o seguinte select
SELECT
f.FaturaID,
--f.Descricao,
L.Descricao
FROM Fatura F
inner join FIN_LANCAMENTOSIMPLES L
on l.Descricao like '%'+ CONVERT(nvarcher(20),f.Descricao) + '%'
Quando converto f.descricao para 20 funciona mais quando faço sem converter não funciona. Fiz o seguinte:
SELECT
Descricao FROM Fatura F where FaturaID = 21
Copiei o Resultado direto da grid que eh o seguinte :'RECUPERACAO DESCONTO '
Observe o espãço que fico!!! ele reserva os 25 caracteres por quando faço o select n está funcionando o sql está comparando os espaços em branco.
Existe alguma função que "corta"esse final?
-
Então, ou vc "converte" igualando os tipos de dados na estrutura da tabela, ou converte no Select.
A função é RTRIM()
- Sugerido como Resposta Cláudio Más sexta-feira, 17 de dezembro de 2010 17:48
- Marcado como Resposta ricardo_david sexta-feira, 17 de dezembro de 2010 19:48