作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试创建一个将同时添加/更新多行的查询,并且我正在尝试通过更新除私钥以外的所有值来确保它正确处理重复键,在我的例子中私钥是 a.id
INSERT INTO products a (a.id, a.price, a.condition, a.link, a.price_updated)
VALUES ('t1', 11, 'used', 'adasd', 100), ('t2', 11, 'used', 'adasd', 100)
ON DUPLICATE KEY UPDATE VALUES (a.price, a.condition, a.link, a.price_updated)
上面的查询在 a (a.id
附近给了我一个正确的语法错误,我可能做错了什么?
有什么想法吗?
最佳答案
我想这就是您要找的:
INSERT INTO products (id, price, cond, link, price_updated)
VALUES ('t1', 11, 'used', 'adasd', 100),
('t1', 11, 'used', 'adasd', 2100)
ON DUPLICATE KEY UPDATE
price = VALUES(price),
cond = VALUES(cond),
link = VALUES(link),
price_updated = VALUES(price_updated)
我认为您也不能为此使用表别名,但我可能弄错了。
顺便说一句——我在条件字段中使用了 cond 只是为了让它更容易——替换为你的字段名称(你可能需要带条件的反引号,因为我认为它是一个保留字)。
关于mysql - ON DUPLICATE 多次更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15180776/
我是一名优秀的程序员,十分优秀!