Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Tomar ultimo valor de un registro y sumarlo

Estas en el tema de Tomar ultimo valor de un registro y sumarlo en el foro de Mysql en Foros del Web. Hola a todos soy nuevo en el foro y me gustaría que me ayuden en un problema que tengo, sucede que tengo dos tablas una ...
  #1 (permalink)  
Antiguo 22/12/2013, 01:45
 
Fecha de Ingreso: diciembre-2013
Mensajes: 108
Antigüedad: 10 años, 4 meses
Puntos: 1
Sonrisa Tomar ultimo valor de un registro y sumarlo

Hola a todos soy nuevo en el foro y me gustaría que me ayuden en un problema que tengo, sucede que tengo dos tablas una se llama usuarios y la otra pagos , cada usuario paga mensual un monto , lo que deseo hacer es sumar de todos los usuarios el ultimo registro de pago que realizo, no logro obtener ese resultado, que alguien me diga si se puede porfa muchas gracias de ante mano.
  #2 (permalink)  
Antiguo 22/12/2013, 02:46
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Tomar ultimo valor de un registro y sumarlo

videlxu, no nos has dado los nombres de los campos y los he inventado. La idea es la siguiente:
primero me traigo los pagos de cada usuario ordenados por fecha en orden descendente: la consulta t1; con subconsulta t2 agrupo por fecha esos datos, lo que me deja solo el primero, es decir el último en fecha de cada uno. De nuevo con subconsulta sumo todos los devueltos por la subconsulta t2. No lo he probado, pero esa es la idea.

Código MySQL:
Ver original
  1.   SUM(t2.pago) totalultimopago
  2.     t1.usuario,
  3.     t1.pago,
  4.     t1.fecha_pago
  5.     FROM
  6.        (SELECT u.id_usuario,
  7.                    p.pago,
  8.                    p.fecha_pago
  9.            FROM usuario u
  10.                   INNER JOIN pagos p ON u.id_usuario = p.id_usuario
  11.                   ORDER BY p.fecha_pago DESC)t1
  12.          GROUP BY t1.usuario)t2
  #3 (permalink)  
Antiguo 22/12/2013, 12:27
 
Fecha de Ingreso: diciembre-2013
Mensajes: 108
Antigüedad: 10 años, 4 meses
Puntos: 1
Respuesta: Tomar ultimo valor de un registro y sumarlo

Muchas Gracias de ante mano, intente hacer lo que propusiste pero no me ah salido, te seré mas especifico, tengo 3 tablas la primera se llama alumno , la segunda se llama pagos y la tercera se llama notas,

alumno:

id_alumno
cod_alu
ape_pat
ape_mat
nom_alu
sexo
fono_alu
dir_alu
email_alu
tipo_carr
carrera
turno
frecuencia
Horario
ope_nom
fec_nac
local
amatricu

pagos:

id
cod_alu
nrecibo
tipo_rec
fecha
concepto
detalle
monto
acuenta
saldo
descuento
mtv_desc
Ope_nom
caja
cancelado
numero
hora

notas:

id
Cod_alu
Curso
PROMEDIO
CICLO
PROFESOR
Estudio
Cod_ope
Obvs

Cada alumno realiza un pago mensualmente, tambien puede hacer otros tipos de pago como cambio de turno , tramites etc, la idea esta en capturar el ultimo registro de todos los pagos de los alumnos y sumarlo para que me de un total, la pregunta es ¿Por qué quiero sumar el ultimo registro de todos los pagos? , lo que pasa es que el sistema que hice no te deja realizar ningun pago si tienes una deuda ejemplo : tabla(alumno) monto(Monto que tiene que pagar el alumno) acuenta(dinero que dara el alumno) saldo(diferencia del monto y acuenta ocea la deuda) si el monto - acuenta = 0 entonces no debe nada de lo contrario pues tiene una deuda y el sistema no te dejara ingresar otros pagos hasta que canceles esa deuda e ahí porque quiero capturar el ultimo pago de todos los alumnos y tienen que estar ordenados por id ya que un alumno puede realizar varios pagos por dia y al ordenarlo por fecha habria problemas ya que seria la misma fecha por eso para evitar eso que se ordene por id, porfavor ayudame solo quiero el total de la deuda que es la suma del ultimo registro de todos los pagos efectuados por alumno, ah verdad me estaba olvidando y porque la tabla notas?, se usa porque hacemos una consulta de pagos por CICLO ejemplo : WHERE alum.carrera='".$carrera."' AND CICLO = '".$ciclo."' GROUP BY alum.ape_pat ASC , las variables son nombres de inputs , input name=" carrera" input name ="ciclo", espero que me ayudes muchas gracias y espero haberme explicado bien.
  #4 (permalink)  
Antiguo 23/12/2013, 11:36
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Tomar ultimo valor de un registro y sumarlo

videlxu,
necesitamos que nos orientes algo mejor con datos de ejemplos concretos para los campos. Explícanos con esos datos lo que puedes tener, dónde lo tienes (los campos) y qué quieres sacar concretamente.

Etiquetas: registro, tabla, tomar, ultimo, usuarios, valor
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:13.