当我运行此查询时,它返回总共6,338行。
SELECT updated.playerId
FROM updated WHERE updated.updated = 0;
然而,当我运行此查询时,它只插入2,771个行,当它应该插入全部6,338。
INSERT IGNORE INTO playerold (playerID)
SELECT updated.playerId
FROM updated WHERE updated.updated = 0;
我在这里错过了什么吗?
答案 0 :(得分:1)
如果您看到错误,则需要删除单词IGNORE sql语句。 我认为你在另一个表中有不同的约束。 检查表约束。
您可以尝试CREATE TABLE playerold SELECT playerID FROM updated WHERE updated.updated = 0;
答案 1 :(得分:1)
1如果您想要所有记录并使用以下查询,请删除playerold表中可用的唯一约束:
INSERT INTO playerold (playerID)
SELECT updated.playerId
FROM updated WHERE updated.updated = 0;
或者,
2尝试:
INSERT INTO playerold (playerID) VALUES (SELECT updated.playerId
FROM updated WHERE updated.updated = 0) ON DUPLICATE KEY UPDATE playerID=playerID