我有php数组(数组有多个值),我想在表中添加数据,但在插入到表中之前检查值是否存在于另一个表中,如果在另一个表中得到值,则跳过该值。
例子:
INSERT INTO table1('column1','column2','column3') VALUES
('val11','val11','val11'),
('val12','val12','val12')
WHERE NOT EXIST
(SELECT * FROM table2 WHERE table2.column1 = VALUES(column1) AND
table2.column2 = VALUES(column2) AND table2.column3 = VALUES(column3)
我走的是正确的道路还是有更好的方法?
谢谢
螨
1条答案
按热度按时间uyto3xhc1#
你需要使用
INSERT ... SELECT
语法来实现这个结果。因为你有多行你必须UNION
将数据行合并到一个派生表中,然后检查该表中的值是否不存在table2
:在dbfiddle上演示