обновление в это же таблице с новыми данными в этой таблице Postgresql

Рейтинг: 1Ответов: 1Опубликовано: 10.01.2023

Есть таблица и она одна, в ней есть записи старая и новая. В новой есть все что-надо но надо сделать так чтобы в старых записях появилась это же информация. Две последние колонки. Как это можно решить ?

Пример: https://dbfiddle.uk/fxHouEmK

Ответы

▲ 0Принят
UPDATE table_1 t1
SET name_3 = t2.name_3, name_4 = t2.name_4
FROM ( SELECT sn, name_3, name_4, 
              ROW_NUMBER() OVER (PARTITION BY sn ORDER BY date DESC) rn
       FROM table_1
       WHERE name_3 <> '' AND name_4 <> ''
       ) t2
WHERE t1.sn = t2.sn
  AND t2.rn = 1
  AND t1.name_3 = '' AND t1.name_4 = ''