![]() |
Realizar una suma con SQL
tengo una tabla con muichos campos y necesito la suma de cada uno de ellos por registro... yo la tengo pero sumo un solo registro... pero sera que hay una manera de sumarlos todos pporque el codigo se me hace muy largo.. tengo esto y funciona perfectamente para uno solo
SET @v_2 = (Select sum(Precio_Basico_Grupo + Total_por_Hospit + Material_Med_Quir + Medicinas + Examen_Especial + Biopsia + Inst_Especial + Equipo_Especial + Mat_Especial + Interv_Quirurgica + TTO_Medico_P_O + Hon_Ayudantes + SAP + Hon_Anestesiologia + Hon_Instrumentista) as Total from Presupuesto where Codigo = '0000000539') UPDATE Presupuesto set Costo = @v_1 where Codigo = '0000000539' |
Supongo que MSSql tendrá triggers, creo que esa es la mejor forma, creas uno que cada vez que se actualice un registro, se sumen los campos.
|
Hay que saber cuando quieres hacer la actualización. Si te interesa hacerla siempre que grabes o modifiques un registro, debes utilizar los TRIGGERS de Alta y Update.
Si te interesa hacerlo en un momento dado para todos los registros, lo que te sobre ahí es la clausula WHERE que te limita el núumero de registros. Deberías poder hacer algo así:
|
Hola, solo agregando un comentario a la solucion que han mencionado neftali y casimiro. si lo que necesitas es conservar la sumatoria de los costos, y ese valor siempre sera igual a la sumatoria de los otros campos, puedes optar por manejar campos calculados, un ejemplo sencillo:
Hola, solo agregando un comentario a la solucion que han mencionado neftali y casimiro. si lo que necesitas es conservar la sumatoria de los costos, y ese valor siempre sera igual a la sumatoria de los otros campos, puedes optar por manejar campos calculados, un ejemplo sencillo:
Como puedes ver el campo suma es definido como la sumatoria de los otros campos, y al consultar algo sobre la tabla SQL SERVER retornara al sumatoria, puedes encontrar mucha info sobre estos campos en la ayuda del SQL Saludos |
La franja horaria es GMT +2. Ahora son las 09:45:44. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi