Загрузка данных


select
    c.id as contract_id,
    c.number as contract_number,
    c.service_type,

    cp.min_annual_income_period as contract_mgd_accumulation,
    cp.min_annual_savings_income as contract_mgd_payment,

    h.pens_product_id as product_id,

    (
        select p.value_decimal
        from prod_line.pens_product_param_pl p
        where p.pens_product_id = h.pens_product_id
          and p.param_pl_id = 306
    ) as product_mgd_accum_from,

    (
        select p.value_decimal
        from prod_line.pens_product_param_pl p
        where p.pens_product_id = h.pens_product_id
          and p.param_pl_id = 307
    ) as product_mgd_accum_to,

    (
        select p.value_decimal
        from prod_line.pens_product_param_pl p
        where p.pens_product_id = h.pens_product_id
          and p.param_pl_id = 308
    ) as product_mgd_payment_from,

    (
        select p.value_decimal
        from prod_line.pens_product_param_pl p
        where p.pens_product_id = h.pens_product_id
          and p.param_pl_id = 309
    ) as product_mgd_payment_to

from ourpension.contract c

left join ourpension.contract_params cp
    on cp.contract_id = c.id

left join ourpension.contract_product_history h
    on h.contract_id = c.id
   and current_timestamp between
       h.begin_date and coalesce(h.end_date, 'infinity')

where c.number = '371544';