2

我知道ON DUPLICATE KEY UPDATE当我想更新一行(如果存在)或插入时,我可以使用“”。但就我而言,我想根据非唯一键进行更新。

例如:我有一个包含 3 列的表:A、B 和 C。它们共同构成唯一键。
现在,如果 B 和 C 的值匹配,我想更新该行,否则插入一个新行。

这可以在没有多个查询的情况下在 MySQL 中完成。

4

1 回答 1

0

如果有唯一键,您可以使用 REPLACE INTO。如果您没有这些唯一值,则需要使用两个查询。查询 1 是更新的选择,查询 2 是更新(如果返回的行数 > 0)或插入(如果没有返回行)

于 2013-02-02T19:51:15.870 回答