BigQuery - сравнивайте исходную и целевую таблицы и вставляйте только новые записи

Я пишу хранимую процедуру для обновления целевой таблицы из исходной таблицы. Данные поступают ежедневно, а также за последние 7 дней. Я хотел бы вставлять новые данные в целевую таблицу только после сравнения исходной и целевой таблиц на основе столбца «Дата».

Не знаю, как это записать в BQ

if source.date = target.date
then dont insert
else 
insert
ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
0
0
27
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

один способ (псевдокод):

insert into target 
select * from source
where source.date <> target.date

Предположительно, вы предполагаете, что у вас есть данные с заданной даты или нет данных. Если это так, вам нужна логика:

insert into target ( . . . )   -- list the columns
    select . . .      -- list the columns
    from source s
    where not exists (select 1 from target t where t.date = s.date);

Это сработает, но я изо всех сил пытаюсь включить 2 условия

Sin 31.03.2021 05:25

Другие вопросы по теме