如何将INSERT IGNORE的数量增加到UNIQUE列?

时间:2012-01-20 05:47:10

标签: mysql sql insert duplicates unique

我有一个简单的单词列表,因为单词列是UNIQUE。因此,我INSERT单词

INSERT IGNORE INTO words (word) VALUES ('word1'), ('word2'), ...

我想添加一个新列“出现次数”来计算INSERT s的数量(IGNORE d)。当INSERT忽略单词存在时,我想增加“出现次数”的值(+1)。

编辑:我正在寻找一种通用方法;例如使用word_map作为

INSER IGNORE INTO word_map (word_id, post_id) 
VALUES ('word_id1', 'post_id1'), ('word_id2', 'post_id2')...

1 个答案:

答案 0 :(得分:1)

INSERT INTO words
  (myword, cnt)
VALUES ('example', 1)
ON DUPLICATE KEY UPDATE
    cnt = cnt + 1;

请参阅INSERT ... ON DUPLICATE KEY UPDATE上的文档。