我目前使用SELECT而不是VALUES的方式插入数据,因为它是默认的。问题是,我找不到只有在数据库中才插入数据的方法。只有在不存在的情况下插入MYSQL
这是我当前的查询:
INSERT INTO collectives_users(id_user,id_artistname,id_collective,users_type,status)
SELECT
(SELECT id_user FROM artistnames WHERE artistname = 'yoannis'),
(SELECT id FROM artistnames WHERE artistname = 'yoannis'),
('1'),(2),(0)
UNION ALL
SELECT
(SELECT id_user FROM artistnames WHERE artistname = 'paul'),
(SELECT id FROM artistnames WHERE artistname = 'paul'),
('1'),(4),(0)
我
INSERT IGNORE INTO
不工作时,并没有真正合适的(不返回错误)
试过我也试图与
AND NOT EXIST
不起作用。
如果你有一个想法不要犹豫。
表中的独特列是什么? – 2013-05-04 15:48:35
尝试像select * from(select ... union all select ...)_t where ... not in(select ... from collective_users)来尝试给括号加上括号 – 2013-05-04 15:51:10
@JW你的意思是主键。 – Juampi 2013-05-04 15:58:45