我有一个包含3列的表格(imageId,reportId,counter)
该表的主键是列(imageId,reportId)
现在,我希望计数器列将是我尝试插入该对(imageId,reportId)的次数的计数器。

例如,如果我有图像“ x.png”,并且有100个人报告该图像包含色情内容,
我希望表格中具有值(“ x.png”,“ pornography”)的行在计数器列中具有100。
当下一个人将该图片报告为色情内容时,我希望计数器为101,依此类推。

我该怎么做?

谢谢

最佳答案

使用INSERT ... ON DUPLICATE KEY UPDATE

INSERT IGNORE INTO table (imageId, reportId, counter) VALUES (1, 1, 0) ON DUPLICATE KEY UPDATE SET counter=counter+1


您还可以将counter列的默认值设置为0并使用以下方法:

INSERT IGNORE INTO table (imageId, reportId) VALUES (1, 1) ON DUPLICATE KEY UPDATE SET counter=counter+1

关于mysql - 自动增量作为SQL中的计数器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14415057/

10-15 19:27