Fórum Busca aproximada no SQL/Firebird #210886

01/02/2004

0

Tem como fazer um busca aproximada em sql, no caso de filtrar dados, por exemplo um nome. Usei o metodo between, e ele só aceita se o nome digitado for exatamente igual...Queria que mostrasse os similiares. Por exemplo para procurar os josé, digitaria ´J´ e iria aparecer todos nomes com ´J´, se digitasse ´Jo´, apareceria todos com inicio ´JO´...


Nish

Nish

Responder

Posts

01/02/2004

Anorex

use o comando like....


Responder

Gostei + 0

01/02/2004

Chico Gois

So complementando.....

Ex:


select * from seila where LIKE ´¬A¬´


Inté+


Responder

Gostei + 0

01/02/2004

Celsoctorres

Olá,

na propriedade on change de um edit faço:
para consulta com banco de dados firebird/interbase


var
NMQuery : IBQuery;
begin
NmQuery:=DM2.IBQEquip;

DBGrid1.DataSource:=DM2.DSQEquip;
NmQuery.Active:=false;
NmQuery.SQL.Clear;
NmQuery.SQL.Add(´Select * from SUATABELA where upper (CAMPODEPROCURA) like:PRCAMPO´);
NmQuery.Params[0].AsString:=´¬´ + edconsulta.Text + ´¬´;
NmQuery.Active:=true;

PRCAMPO: é um parâmetro e este atribui ao valor do edconsulta..., o ´¬´ no início e fim é para procurar em qualquer parte da palavra....

só para complementar...

neste form tenho um dbgrid, que vc deve ter percebido, o datasource deste dbgrid neste caso é o DSEquip, o DM2 é o datamodule, NmQuery é o nome da Query que vc deve ligar ao seu banco de dados, agora vc coloca um datasource, que se chama o DSEquip, este vc ligará a propriedade dataset ao NmQuery... e não coloque nada na propriedade datasource da NmQuery....

espero ter lhe ajudado....

:wink:

um abraço


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar