Php 使用多个值在重复密钥更新时插入
使用时,更新多个列而不更新某些列的语法是什么 我编写了以下查询:Php 使用多个值在重复密钥更新时插入,php,mysql,sql,insert,insert-update,Php,Mysql,Sql,Insert,Insert Update,使用时,更新多个列而不更新某些列的语法是什么 我编写了以下查询: INSERT INTO table (id,number,text) VALUES (1,2,3),(3,5,"i want this remain the previous value and not change"),(1,2,3) ON DUPLICATE KEY UPDATE id=VALUES(id), number=VALUES(number), text=VALUES(text); 如何不更改某些值并使其保留为
INSERT INTO table (id,number,text) VALUES (1,2,3),(3,5,"i want this remain the previous value and not change"),(1,2,3)
ON DUPLICATE KEY UPDATE id=VALUES(id), number=VALUES(number), text=VALUES(text);
如何不更改某些值并使其保留为以前的值?如果使用
,则使用执行此操作:
INSERT INTO table (id,number,text) VALUES (1,2,3),(3,5,"ZZZ"),(1,2,3)
ON DUPLICATE KEY UPDATE id=VALUES(id), number=VALUES(number), text=IF(VALUES(text)="ZZZ", text, VALUES(text));
-对于多个值,请在
中使用,而不是=
:
INSERT INTO table (id,number,text) VALUES (1,2,3),(3,5,"ZZZ"),(1,2,"YYY")
ON DUPLICATE KEY UPDATE id=VALUES(id), number=VALUES(number), text=IF(VALUES(text) IN ("ZZZ", "YYY"), text, VALUES(text));
你能告诉我如何在
中使用而不是=