ON Duplicate Key 用于多个值的精确组合

ON Duplicate Key for exact combination of multiple values

假设我们有这个 table:

--------------------------
| x  |  y  |  z  |  data  |
---------------------------
| 3  |  53 |  24 |  hello |
---------------------------

-

现在我只想更新 "data" 以防精确 X 的组合, Y, Z.

INSERT INTO TABLE SET x=?,y=?,z=?,data=? ON DUPLICATE KEY UPDATE data=?

这显然行不通。我该怎么做?

您只在三个字段 x、y、z 上添加一个复合唯一键。它有效。

您也可以使用以下语法:

INSERT INTO TABLE (x,y,z,data) values (?,?,?,?) ON DUPLICATE KEY UPDATE data=?;