【发布时间】:2018-11-14 20:30:57
【问题描述】:
我的目标是仅在不存在相同值时执行 SQL 插入。
这是我的桌子 1:
id(auto_increment)
version(string)
我的查询如下所示:
INSERT IGNORE INTO table1 (version) VALUES ('12345');
问题是忽略语句不起作用,因为每一行都不同,因为 id 列(auto_increment)。
这里有人有避免重复保存相同值的解决方案吗?
解决方案:
INSERT INTO table1 (version)
SELECT * FROM (SELECT '12345') AS tmp
WHERE NOT EXISTS (
SELECT version FROM table1 WHERE version = '12345'
) LIMIT 1;
【问题讨论】:
标签: php sql insert auto-increment insert-into