Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   suma de campos novato (https://www.clubdelphi.com/foros/showthread.php?t=13825)

cesarjbf 01-09-2004 00:27:30

suma de campos novato
 
BT, Tengo 2 tablas en la cual una tiene el campo 'total_venta' y en la otra tengo 'Ingreso_total', mi pregunta es como se suman todos los reg. en 'total_venta' y el resultado pasarlo a la otra tabla donde esta el 'Ingreso_total'?
estoy usando D5 y los FibPlus con el componente Query pero no me familiarizo con squl muy bien todavia......Gracias........

Kreyser 01-09-2004 00:40:07

Sql
 
Hola, no me queda muy claro lo que deseas hacer, de modo que solo te dare un par de aproximaciones al respecto, lo que si te facilito es un link de esta misma comunidad donde podras encontrar un sencillo manual SQL que te ayudará.

http://www.clubdelphi.com/manuales/

Con respecto a lo que comentas, necesitarias hacer un ...SUM('total_venta')... y realizar un INSERT en la otra tabla con el resultado del mismo.

Espero te valga de orientación.

Saludos.:p

cesarjbf 01-09-2004 00:53:54

Con respecto a lo que comentas, necesitarias hacer un ...SUM('total_venta')... y realizar un INSERT en la otra tabla con el resultado del mismo.

exactamente eso quiero hacer pero no se como va el codigo para que funcione,lei el manual pero todavia no me queda claro

alguien me podria explicar como va el codigo?

roman 01-09-2004 02:37:03

Un query lo cargas con la sentencia

Código SQL [-]
select sum(total_venta) from tabla

y ejecutas la consulta con el método Open o poniendo Active := true;

Obtienes el valor resultante con Query.Fields[0].AsInteger (o AsFloat dependiendo del tipo de datos del campo).

Lo de pasarlo a la otra tabla depende de si te refieres a modificar el valor de un registro ya existente o insertar un nuevo registro. En el primer caso usarás UPDATE y en el segundo INSERT como ya te indicaron. Pero los pasos son semejantes: llenas la consulta en el query y la ejecutas. Sólo que en este caso usará muy posiblemente (no conozco FibPlus) algún método como ExecSQL en lugar de Open. Esto es así porque la segunda consulta no devuelve resultados.

De cualquier forma te recomiendo que leas no sólo de SQL sino del uso de componentes de bases de datos, y el capítulo "Developing Database Applications" de la ayuda de Delphi es un muy buen primer paso.

// Saludos

cesarjbf 01-09-2004 10:12:33

pues con lo que me ayudaron y lo que lei utilice esto:

procedure TEventos.Button1Click(Sender: TObject);
var
i:integer;
begin
Query.Close;
query.SQL.Clear;
query.sql.add('select sum(total) as total from eventos');
query.ExecQuery;
DataSet.FieldByName('INGRESO_TOTAL').AsInteger=Query['total'].AsInteger;
end;
con esto calculo el total de las ventas en la !ra Tabla y lo paso al campo de la otra Tabla llamado INGRESO_TOTAL,

y funciono!, espero que sea lo correcto pues el que funcione no siempre lo dice...


La franja horaria es GMT +2. Ahora son las 14:39:26.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi