Parece que no se me entiende... lo expongo de otra manera.
Se puede hacer una consulta con las respuesta de otra consulta???
Lo que yo hago ahora es lo siguiente. Realizo una consulta la que me entrega un listado de registros, que los guardo en un listbox con el siguiente codigo
Código Delphi
[-]
ibquery1.sql.add('select distinct area from estructura')
listbox1.clear;
while not ibquery1.eof do
begin
listbox1.items.add(ibquery1.fieldbyname('area').asstrinG);
ibquery1.next;
end;
La cantidad de registros del listbox puede ser de hasta unos 20 registros.
luego realizo otra consulta en donde hago la suma...
Código Delphi
[-]
for I:=0 to listbox1.Items.Count-1 do
begin
IBQUERY2.Close;
IBQUERY2.SQL.CLEAR;
IBQUERY2.SQL.ADD('SELECT MONTO FROM PRESUPUESTO');
IBQUERY2.SQL.ADD('WHERE EMPRESA ='+QUOTEDSTR('MAT'));
ibquery2.SQL.add('AND area ='+quotedstr(listbox1.Items[i]));
IBQUERY2.Open;
if ibquery2.IsEmpty = FALSE then
while not ibquery2.eof do
BEGIN
MONTO:=MONTO+IBQUERY2.FieldByName('MONTO').ASFLOAT;
IBQUERY2.NEXT;
end;
END;
Esto funciona bien, pero LEEEENTO... porque debe hacer muchas consultas.
Es posible realizar esto mismo en una sola consulta??
Espero que me puedan ayudar.... muchas gracias
Saludos