Я чувствую, что это должно быть довольно просто, но у меня проблема с поиском лучшего способа сделать это
У меня есть несколько подэлементов в этой таблице subitem_to_item_status, которые имеют статус, но мне нужновставить запись для всех подэлементов, которые еще не там. Мне не нужно обновлять то, что там, я просто пытаюсь реплицировать 'insert / ignore'
Пример данных для подэлементов
ITEM_SUBITEMT
item_subitem_id | creator_identifier
-----------------------------------------
12 12345
13 12345
14 12345
15 12345
16 12345
17 12345
18 12345
19 12345
20 12345
21 12345
22 12345
SUBITEM_TO_ITEM_STATUS
SUBITEM_ID | ITEM_STATUS_ID | CREATED_BY_IDENTIFIER
------------------------------------------------------------
12 1 12345
15 1 12345
16 1 12345
20 1 12345
Итак, с этими данными мне просто нужно вставить записи из первой таблицы, у которых нет идентификатора 12,15,16 или 20
MERGE INTO schema.SUBITEM_TO_ITEM_STATUS (SUBITEM_ID,ITEM_STATUS_ID, CREATED_BY_IDENTIFIER,ROWCHANGE,CREATED_AT) AS T
USING( (SELECT ITEM_SUBITEM_ID, 1, CREATOR_IDENTIFIER, NOW(),NOW() FROM schema.ITEM_SUBITEMT) AS S
ON S.ITEM_SUBITEM_ID = T.SUBITEM_ID
WHEN NOT MATCHED THEN INSERT;