Para ayudar a alguno que lo necesite a mi me funcionó de ésta manera:
Código Delphi
[-]
Query1.close;
Query1.sql.clear;
Query1.SQL.Add('Select ...');
Query1.SQL.Add('From ....'); if variable1 then
begin
query1.sql.add('where Edad = :Pedad');
query1.sql.add('order by Nombre');
end
else Query1.Open;
DBGrid1.DataSource:=DS_...;
end;
También podría haber usado un case en lugar del if
Espero que se haya entendido pero de ésta manera me funcionó