Jorge Barzola escribió: > Obtengo de un select con mas de 30 mil registros con la la siguiente > información (para el ejemplo solo muestro un registro): > > NRO_DOC | EDAD | MTO_TASA | MTO_ABO | LX | DX | > 20160978 | 65 | 0.006518349 | 6.83 | 1 | 0.006518349| > > El registro de ejemplo tiene como edad 65 años por tal segun TBL_TASA se > debe generar 46 registros aumentando la edad de uno en uno y obteniendo la > tasa correspondiente a la edad.
Usa generate_series() para generar el rango de edades. Algo así: select ... FROM generate_series(65, 65+46) AS edad, ... Agrega funciones ventana (LAG() para el registro anterior) para calcular los valores de las otras columnas. Como los valores 65 y 46 vienen de una tabla, los puedes poner en otro ítem del from, algo así: SELECT ... FROM TBL_TASA, generate_series(EDAD, EDAD + CANTIDAD) AS edad WHERE etc. -- Álvaro Herrera https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services