2014-01-16 83 views

回答

1

IF开始:

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)); 

- 用于多个值使用IN代替=

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)); 
+0

非常感谢你。你是MySQL的硕士;) –

+0

你能说我如何使用'IN'而不是'=' –

+0

@MohammadMasoudian我已更新 –

相关问题