пытается обновить значение до таблицы (окончательной) из таблицы (first_stage), обе эти таблицы имеют одинаковые имена полей, но разные значения, содержимое таблиц:
(Min_Date) date,
(Max_Date) date,
(NoofDays) int,
(IMSI) string,
(Site) string,
(Down_Link) int,
(Up_Link) int,
(Connection) int
на основе IMSI и Site, если она существует в строке таблицы, тогда взять минимальную дату как Min_Date и Максимальную дату как Max_Date и получить
min(Min_Date),max(Max_Date)sum(NoofDays),sum(Down_Link),sum(up_Link),sum(connection)
, и если обаидентификаторы строк не сопоставляются (IMSI, Site) с таблицей (Final), затем вставляют строку в итоговую таблицу.Я все еще новичок с sql
table first_stage:
MinDate Max_Date NoofDays IMSI Site Down_link Up_link Connection
2019-03-22 2019-03-26 1 222 google 1 1 1
2019-03-26 2019-03-27 3 222 youtube 1 1 1
2019-03-02 2019-03-27 5 333 facebook 2 3 1
2019-03-02 2019-03-27 5 111 facebook 20 33 11
table final:
MinDate Max_Date NoofDays IMSI Site Down_link Up_link Connection
2019-03-01 2019-03-27 1 222 google 2 2 1
2019-03-12 2019-03-25 1 222 youtube 2 2 2
2019-03-25 2019-03-27 4 333 facebook 3 6 1
, который должен соответствовать как IMSI, так и сайту, чтобы сделать заявление об обновлении, итоговая таблица после обновления должна выглядеть следующим образом:
table final:
MinDate Max_Date NoofDays IMSI Site Down_link Up_link Connection
2019-03-01 2019-03-27 2 222 google 3 3 2
2019-03-12 2019-03-27 4 222 youtube 3 3 3
2019-03-02 2019-03-27 9 333 facebook 5 9 2
2019-03-02 2019-03-27 5 111 facebook 20 33 11