Вставьте sql, если все строки разные

0

У меня есть SQL-скрипт, содержащий сотни запросов. Мне нужно сделать запрос INSERT INTO, но только если строка со всеми одинаковыми полями не существует.

Есть ли короткий способ сделать это? Я не хочу добавлять WHERE NOT EXISTS для каждого запроса, это займет слишком много времени... Спасибо!

Теги:
sql-insert
ignore

1 ответ

0
MERGE INTO Table_Name Tar
USING Table_Name src
ON Tar.Field1=src.Field1 AND Tar.Field2=src.Field2 AND Tar.Field3=src.Field3 
WHEN NOT MATCHED 
THEN 
INSERT (...) VALUES(src..)
GO

Это грубый код. Попробуйте это.

  • 0
    Я забыл упомянуть, что я использую MySQL, кажется, что MERGE не поддерживается
  • 0
    если это MySQL, пожалуйста, используйте IGNORE в качестве суффикса после INSERT .for ex: - INSERT IGNORE INTO Table_Name

Ещё вопросы

Сообщество Overcoder
Наверх
Меню