这个问题在这里:
MySQL:INSERT IGNORE 或 ON DUPLICATE KEY UPDATE 检查多个而不是唯一的列
相似,但不完全一样。
我正在尝试使用如下表格建立一个观察列表:
recordId | itemId | userId | dateAdded
recordId 是唯一的unique
列,并且是一个自动增量 ID 字段。
itemId、userId 和 dateAdded 可以单独复制,但不能完全复制。
所以,如果用户已经将一个项目添加到他/她的监视列表中,我希望它只更新 dateAdded。
因此,行可能多次包含相同的 userId(因为用户可能希望“观看”多个项目)并且它可能多次包含 itemId(因为同一项目可能被许多用户“观看”)但两者的组合匹配已存在记录的 userId 和 itemId 应该会导致更新。
是否有一个单一的语句方式来做到这一点,或者我是否需要userId = & postingUser & and itemId = & requestedId &
在尝试插入之前询问数据库?