Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

andrejrocha

Sílabas

Recommended Posts

OLa a todos, gostaria de sanar uma duvida, se alguem puder ajudar, agradeço....quero fazer um select assim :Select * from fornecedores where obs like '%MENTO%'até ai tudo bem, estes produtos foram digitados em um campo TEXT, só que acha a palavra procediMENTO, aliMENTO"...etc...estou dando exemplo tá, como faço para ele achar a sílada MENTO, pois é um texto grande e preciso achar quando estiver escrito a palavra MENTO... e se eu tirar a %, não acha, porque existe um texto e nao somente uma palavra...Se alguem puder ajudar, agradeço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloque dois espaços, antes e e depois da palavra.

Exemplo:

 

Select * from fornecedores where obs like '% MENTO %'

 

É isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Foi a primeira coisa que fiz, mas não resolveu..Porque, se você iniciar um texto com BOM DIAse você fizer este select '% BOM %', ele não aparecer, porque, o BOM não tem espaço antes...e sim depois...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Neste caso você teria problemas também com pontuações.

 

Mas uma alternativa seria colocar várias opções, tipo:

Select * from fornecedores 
where obs like '% MENTO' 
or obs like 'MENTO %' 
or obs like '% MENTO %' 
or obs like '% MENTO,%' 
or obs like '% MENTO.%'

No momento, esta é a unica solução que vem a minha mente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não funcionou deste modo, se faço um select like '%PALAVRA%' retorna por volta de 12 registros, porem, se uso os metodos acima, retorna um só.Se alguem souber, agradeço.Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

NA VERDADE É ALGUMA ROTINA QUE FACA A SEPARACAO DE SíLABAS, SE ALGUEM POSSUIR, AGRADEÇO

Camarada,

 

Engraçado com a experiência q tenho e analisando a expressão:

Select * from fornecedores where obs like '%MENTO%'
Deveria trazer todoso os registros cujo o conteúdo do campo obs.

Pois pelo que sei os % seria usada como uma máscara qualquer caracter seria ignorado inclusi brancos, virgulas e pontos.

 

Tive que formatar o micro mas já estou insltalando o sql server vou fazer uns teste e posto o que conseguir.

 

Acho que o deisbeiço é simples é analisar com calma.

 

t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiz o seuinte teste e funcionou legal:

create table #tmp (obs varchar(30))insert into #tmp (obs) values ('compleMENTO%')insert into #tmp (obs) values (' aNiquilaMENTO,')insert into #tmp (obs) values (' aNiquilaMENTO  ,')insert into #tmp (obs) values ('.julgamenotMENTOs.')insert into #tmp (obs) values ('.julgamenot MENTOs.')insert into #tmp (obs) values ('.julgamenotMETNOs.')insert into #tmp (obs) values ('.julgamenotMETNNOs.')select obs from #tmp where obs like '%mento%'drop table #tmp

Teste ai para você ver. Traz tudo independente de brancos, pontos ou virgulas.

 

t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.