Consulta SQL
Boa tarde!
Pessoal, estou com grande dificuldade em fazer um certo tipo de pesquisa com SQL, por exemplo tenho o nome do livro ´Senhor dos Anéis´ e gostaria de fazer uma pesquisa por este título em meu banco, bem estou utilizando o Like ¬´String´¬(Claro, passando à parâmetros eu uma Query), até aí tudo bem pois se eu pesquiso por apenas ´Senhor´ ele me traz todos os títulos que contenham Senhor, e a mesma coisa com Anéis, o problema é se eu quiser pesquisar por exemplo ´Senhor Anéis´ ecluíndo o ´dos´ da consulta, ele não me retorna nada, a mesma coisa acontece se eu quizer inverter as palavras, por exemplo ´Anéis Senhor´, nada retorna. Creio eu que terei que fazer um like para cada palavra, mas como fazê-lo? Terei que gravar cada palavra em uma string e depois pesquizar? E se for isso, como fazer para que do Edit ele grave cada palavra em uma string e depois faça a busca? Pode ser que seja simples, mas meus poucos conhecimentos não me ajudam.
Valeu!
Angelo
Pessoal, estou com grande dificuldade em fazer um certo tipo de pesquisa com SQL, por exemplo tenho o nome do livro ´Senhor dos Anéis´ e gostaria de fazer uma pesquisa por este título em meu banco, bem estou utilizando o Like ¬´String´¬(Claro, passando à parâmetros eu uma Query), até aí tudo bem pois se eu pesquiso por apenas ´Senhor´ ele me traz todos os títulos que contenham Senhor, e a mesma coisa com Anéis, o problema é se eu quiser pesquisar por exemplo ´Senhor Anéis´ ecluíndo o ´dos´ da consulta, ele não me retorna nada, a mesma coisa acontece se eu quizer inverter as palavras, por exemplo ´Anéis Senhor´, nada retorna. Creio eu que terei que fazer um like para cada palavra, mas como fazê-lo? Terei que gravar cada palavra em uma string e depois pesquizar? E se for isso, como fazer para que do Edit ele grave cada palavra em uma string e depois faça a busca? Pode ser que seja simples, mas meus poucos conhecimentos não me ajudam.
Valeu!
Angelo
Angelo
Curtidas 0
Respostas
Motta
02/05/2003
select *
from livros
where titulo like ´¬senhor¬aneis¬´
retorna algo assim
o senhor dos aneis
o senhor dos aneis II
senhora e seus aneis
....
from livros
where titulo like ´¬senhor¬aneis¬´
retorna algo assim
o senhor dos aneis
o senhor dos aneis II
senhora e seus aneis
....
GOSTEI 0
Angelo
02/05/2003
Agradeço a ajuda acima e volto com outra dúvida:
Tenho certeza de que irá funcionar, então agora o que eu preciso fazer e pegar a string (a qual eu alimentei com um edit) e fazer que a cada espaço seja colocado uma ¬, exemplo a string está assim: ´Senhor dos Anéis´ e far com que ele fique assim: ´Senhor¬dos¬Aneis´, mas como fazê-lo, tem ideia?
Angelo
Tenho certeza de que irá funcionar, então agora o que eu preciso fazer e pegar a string (a qual eu alimentei com um edit) e fazer que a cada espaço seja colocado uma ¬, exemplo a string está assim: ´Senhor dos Anéis´ e far com que ele fique assim: ´Senhor¬dos¬Aneis´, mas como fazê-lo, tem ideia?
Angelo
GOSTEI 0
Schwarze
02/05/2003
Essa é mole, ângelo. Faça algo assim:
...
s:= Edit1.Text;
for i:= 1 to length(s) do
if s[i] = #32 then //32 é o mesmo que ´ ´ (espaço)
s[i]:= ´¬´;
query.parambyname(´parametro mysteriozo do angelo´).asstring:= s;
...
:twisted: Certo, Mano?
...
s:= Edit1.Text;
for i:= 1 to length(s) do
if s[i] = #32 then //32 é o mesmo que ´ ´ (espaço)
s[i]:= ´¬´;
query.parambyname(´parametro mysteriozo do angelo´).asstring:= s;
...
:twisted: Certo, Mano?
GOSTEI 0
Angelo
02/05/2003
Agradeço sinceramente ao Motta eo ao Schwarze pela grande ajuda recebida, no que for preciso e possível contem comigo!
Valeu!
Angelo
angelo_l_santos@brturbo.com
Valeu!
Angelo
angelo_l_santos@brturbo.com
GOSTEI 0