这是MS SQL代码
if not exists (select PId from Person
where Name = 'Name1' and Surname = 'Surname1')
INSERT INTO [someDb].[dbo].[Person]
([Name] ,[Surname])
VALUES
('Name1' ,'Surname1')
你可以帮我写一下我的sql中的ekvivalent代码吗
感谢
答案 0 :(得分:3)
假设你有(name,surname)的唯一索引,你可以使用INSERT IGNORE:
INSERT IGNORE INTO `someDb`.`Person`
(`Name` ,`Surname`)
VALUES
('Name1' ,'Surname1')
答案 1 :(得分:1)
在MySQL 中它通常已经完成我通常在看到其他答案之前就已经这样做了
INSERT INTO table (fields) VALUES (values) ON DUPLICATE KEY UPDATE ID=ID;
在你的情况下,它需要一个UNIQUE索引(Name,Surname)列