Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-08-2005
mangk mangk is offline
Registrado
 
Registrado: ago 2005
Posts: 5
Poder: 0
mangk Va por buen camino
calculo en SELECT

Necesito calcular el valor de un campo en base a la suma de otros de la misma tabla sumando desde el primer registro hasta el actual (como un acumulador). Ej:

Tabla "a"
Row1 Row2 Calculado
1 "X" 1
5 "X" 6 (5+1)
2 "Y" 2
7 "X" 13 (7+6)
6 "Y" 8 (8+2)

Se puede hacer con un select?
Gracias.
Responder Con Cita
  #2  
Antiguo 14-08-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Eso parece un geroglífico, ¿que son "X" e "Y"? son caracteres dentro del valor del campo?

saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #3  
Antiguo 15-08-2005
celades1 celades1 is offline
Miembro
 
Registrado: ago 2005
Posts: 116
Poder: 19
celades1 Va por buen camino
Hola esto es un ejemplo de lo que creo que tu quieres
me enseña el id, la serie de facturacion, el importe de cada alabaran i el importe acumulado de todos los importes de los albaranes anteriores i el incluido que tengan la misma serie de facturacion del registo


Código SQL [-]
select a.id, a.serie_facturacio_id,a.import_net,
(select sum(b.import_net ) from albarans b where b.id<=a.id and a.serie_facturacio_id=b.serie_facturacio_id)
from albarans a order by a.id
Saludos
Responder Con Cita
  #4  
Antiguo 15-08-2005
mangk mangk is offline
Registrado
 
Registrado: ago 2005
Posts: 5
Poder: 0
mangk Va por buen camino
La primer columna de numeros son valores de un campo la segunda columna de X o Y entre comillas son valores de un campo caracter, y la ultima columna de numeros son el resultado de un calculo , lo que esta entre parentesis es de donde se obtiene el resultado que es sumando la 1er columna de la fila actual al calculo de la tercer columna de la fila anterior que coincida segun corresponda con "X" o "Y".
No se si te aclara algo o al reves, gracias igual.
Responder Con Cita
  #5  
Antiguo 15-08-2005
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
Una tabla así como esta:
(Sombrea para que veas como hacer que se parezca a una tabla, cambiando colores)
Row1 | Row2 | Calculado
-------------------------
1 --- | "X" -- | 1
5 --- | "X" -- | 6 --------- de (5+1)
2 --- | "Y" -- | 2
7 --- | "X" -- | 13 -------- de (7+6)
6 --- | "Y" -- | 8 --------- de (8+2)

un acumulativo de los X y un acumulativo de los Y según vayan apareciendo.
¿Ya probaste hacer como recomienda Celades1?
__________________

Responder Con Cita
  #6  
Antiguo 16-08-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Otra forma de poner tablas


Código:
Row1  | Row2   | Calculado
--------------------------
1     | "X"    |  1 
5     | "X"    |  6          de (5+1)
2     | "Y"    |  2
7     | "X"    | 13          de (7+6)
6     | "Y"    |  8          de (8+2)
// Saludos
Responder Con Cita
  #7  
Antiguo 16-08-2005
mangk mangk is offline
Registrado
 
Registrado: ago 2005
Posts: 5
Poder: 0
mangk Va por buen camino
Gracias

Ya lo resolvi como me indica celades1, gracias a todos.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 20:08:16.


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
Copyright 1996-2007 Club Delphi