Se trata de que si en el Edit no hay nada deje la consulta como está y si escribes algo modificarla para que coja el valor utilizando el operador LIKE.
Algo así:
Código Delphi
[-]
const
STRSQL = 'SELECT * FROM Tabla1';
...
Query.Close;
if (Edit1.Text = '') then
Query.SQL.Text := STRSQL;
end
else begin
Query.SQL.Text := STRSQL + ' WHERE Campo LIKE ' + QuoteStr('*' + Edit1.Text + '*');
end;
Query.Open;
Puedes programarlo en un botón, en el OnExit del Edit o en el Onchange del Edit (personalmente no lo recomiendo nada -en el OnChange-, ya que puedes hacer demasiadas consultas y muchas innecesaria).
NOTA: Segun la BD que utilices el caracter * puede cambiar por un % (por ejemplo -SQLServer-).