LIKE

CHMATOS 31/03/2011 20:35:12
#369988
Estou utilizando o código abaixo paea retornar dados de um BD. Exemplo: Usuário digita: Rua são pedro, jabaquara.

A query deve retornar todos os dados bairros cadastrados como jabaquara, a sintaze abaixo até funciona, no entanto, retorna os dados corretamente se digitar no inicio do textbox se digitar no meio, ou no fim, conforme exemplo acima não exibe nenhuma dado.

where Tabclientes.Bairro LIKE [ô]%[Ô] & Onde & [Ô]%[ô] [Ô]
TECLA 31/03/2011 21:08:01
#369990
Resposta escolhida
O campo de busca é POR BAIRRO e o usuário digita RUA + BAIRRO?
Realmente, se você fizer uma busca usando LIKE [ô]%RUA SÃO PEDRO, JABAQUARA%[ô], o resultado será 0 registro retornado.
O que você pode fazer é separar as palavras por ESPAÇO e fazer uma pesquisa inteligente.
CHMATOS 31/03/2011 21:59:13
#369995
como eu poderia separar as palavras por espaço?
TECLA 31/03/2011 22:34:38
#370001
Faça um INSTR para verificar se existe algum espaço em branco
Utilize a função SPLIT para separar o que o usuário digitou em um vetor
Por fim, você pode usar vários operadores LIKE (lembrando que pode não ser uma solução com um bom desempenho, mas funciona).

...BAIRRO LIKE [ô]%SÃO PEDRO%[ô] OR BAIRRO LIKE [ô]%JABAQUARA%[ô]...
Tópico encerrado , respostas não são mais permitidas