我的表由几列组成,第一列是PK AI ID
,另一列是唯一TIME
。两个插入可能具有相同的TIME
值。我想要插入它们并通过递增它,调用NOW()或以任何其他可能的方式更改第二个INSERT中的TIME
值。是否有可能在一个MySQL查询中?
答案 0 :(得分:0)
这不能在单个查询中完成,因为ON DUPLICATE KEY UPDATE
只会更新现有行。它不会影响新插入的行。
一种可能的做法是执行INSERT ... ON DUPLICATE KEY UPDATE
查询并检查受影响的行以确定是否存在插入或更新。如果有更新,只需再执行一次插入以替换时间。如果time
和ID
之间存在搭配(仅需要记录次数),这将无效。