Мне нужно установить нулевое значение, чтобы при левом соединении со значениями записей, которые соответствуют max (column_value) в группе, у меня есть таблица буксировки:
первая:
discount_id | sequence | groupid | ruleid | tbl_dt
-------------+----------+---------+--------+----------
1111 | 1 | 141 | 1175 | 20190924
1111 | 5 | 107 | 1204 | 20190924
1111 | 4 | 132 | 1199 | 20190924
1111 | 6 | 150 | 1887 | 20190924
второй:
subsid | discount_id
---------+-------------
3087048 | 1111
3087047 | 1111
3087050 | 1111
3087045 | 1111
3087046 | 1111
3087044 | 1111
3087049 | 1111
3087043 | 1111
я пытался объединить вторую таблицу raw с сырой с первой, так что мой вывод:
subsid | discount_id | sequence | groupid | ruleid
---------+-------------+----------+---------+--------
3087043 | 1111 | 5 | 107 | 1204
3087043 | 1111 | 6 | 150 | 1887
3087043 | 1111 | 4 | 132 | 1199
3087043 | 1111 | 1 | 141 | 1175
3087044 | 1111 | NULL | NULL | NULL
3087045 | 1111 | NULL | NULL | NULL
3087046 | 1111 | NULL | NULL | NULL
3087047 | 1111 | NULL | NULL | NULL
3087048 | 1111 | NULL | NULL | NULL
3087049 | 1111 | NULL | NULL | NULL
3087050 | 1111 | NULL | NULL | NULL
код, который я использовал для создания приведенной выше таблицы:
insert into work.disc_plan select SubsID , MSISDN , EppAcc, User_Name ,
Bill_Cycle, Tariff , Pack ,Discount_Qual_ID ,a.Discount_ID , Qualification_Type,Discount_Desc,Sequence,GroupID,RuleID,20190924
from ((select *, row_number() over (partition by Discount_ID order by subsid ) as seqnum from work.subs_disc where tbl_dt=20190924 order by Discount_ID) a
left join (select *, row_number() over (partition by Discount_ID order by sequence ) as seqnum from work.rules where tbl_dt=20190924 ) b
on a.Discount_ID=b.Discount_ID and a.seqnum=b.seqnum ) ;
что мне нужно сейчас, чтобы заполнить значения NULL, вызываемые левым объединением значением записей max (sequence)
так что мой изгнанный отупуть должен вот так:
subsid | discount_id | sequence | groupid | ruleid
---------+-------------+----------+---------+--------
3087043 | 1111 | 5 | 107 | 1204
3087043 | 1111 | 6 | 150 | 1887
3087043 | 1111 | 4 | 132 | 1199
3087043 | 1111 | 1 | 141 | 1175
3087044 | 1111 | 6 | 150 | 1887
3087045 | 1111 | 6 | 150 | 1887
3087046 | 1111 | 6 | 150 | 1887
3087047 | 1111 | 6 | 150 | 1887
3087048 | 1111 | 6 | 150 | 1887
3087049 | 1111 | 6 | 150 | 1887
3087050 | 1111 | 6 | 150 | 1887
есть идеи как это сделать?