quise negarme a creer que es imposible...
muy bien voy a intentar explicarlo mejor, la tabla pago contiene el registro de todos los pagos realizados, estoy hablando de un sistema de cobro de agua.
Listare algunas de las columnas principales
pag_id,
pag_fecha,
pag_monto,
pag_status
el interes de este query es, ya que no todos los pagos son facturados en el mes que le corresponde, algunos usuarios piden factura en el siguiente mes, entonces tengo la necesidad de generar esa factura con varios pagos hechos en el mes actual, entonces necesito que la consulta me devuelva los pagos en donde la suma por el campo pag_monto sea igual a una determinada cantidad.
P.Ej. el mes anterior un usuario (por x ó y) olvido facturar un pago de 1000 pesos, para ese mes anterior yo genere una factura global de venta al publico en general con lo que cerre mi periodo, entonces el usuario al siguiente mes me la solicita, yo entro en discusion con el diciendole que ya no se puede generar por x razones fiscales etc. Pero el round lo gana el cliente y me veo obligado a generar en este mes una factura por esos 1000 pesos.
En primer lugar no puedo usar el registro de pago original porque ya fue tomado para generar la factura global, entonces tengo que buscar dentro de los pagos del mes actual y dentro de los pagos que no facturan individualmente, los registros que sumados me den 1000 pesos sin importar si va a encontrar 1, 2, 3 o n registros, lo ideal es que encontrara otro registro de 1000 pesos y listo pero muchas veces hacen pagos donde forzosamente tengo que agrupar ó sumar mas de un pago para obtener la cantidad que busco.
La unica condicion que puedo agregar a la clausula where es la fecha, que sean pagos del mes actual, pero aun asi no se como obtener los Id de los registros
De pronto he pensado que por medio de una simple consulta no es posoble, y quiza tenga que hacerlo con cursores para ir probando con todas las combinaciones posibles ...
|