我可以在mykey(主键)存在时更新我的表,或者当mykey不存在时插入,使用此查询:
INSERT INTO customers (id, customer_id, page_id, mykey, hits)
VALUES
(NULL, 1, 1, 23, 49) ON DUPLICATE KEY UPDATE hits=hits+49;
工作正常。 现在我无法弄清楚如何在一个查询中添加多个值。 我想要的是这个:
INSERT INTO customers (id, customer_id, page_id, mykey, hits)
VALUES
(NULL, 1, 1, 23, 49) ON DUPLICATE KEY UPDATE hits=hits+49,
(NULL, 2, 2, 56, 11) ON DUPLICATE KEY UPDATE hits=hits+11,
(NULL, 3, 3, 81, 14) ON DUPLICATE KEY UPDATE hits=hits+14;
但这不起作用。 是否可以在一个查询中插入或更新这样的多个值?
答案 0 :(得分:1)
INSERT INTO customers (id, customer_id, page_id, mykey, hits)
VALUES
(NULL, 1, 1, 23, 49),
(NULL, 2, 2, 56, 11),
(NULL, 3, 3, 81, 14)
ON DUPLICATE KEY UPDATE hits=hits+VALUES(hits);
答案 1 :(得分:0)
在结束时执行ON DUPLICATE KEY UPDATE:
INSERT INTO customers (id, customer_id, page_id, mykey, hits)
VALUES
(NULL, 1, 1, 23, 49),
(NULL, 2, 2, 56, 11),
(NULL, 3, 3, 81, 14)
ON DUPLICATE KEY UPDATE hits=hits+VALUES(hits);