2017-06-06 67 views
0

这里是我的插入脚本:MySQL的更新,如果值大于电流值

INSERT INTO CONTENT (content_id, version, description) 
VALUES ('123', '1', 'This is an example') 
ON DUPLICATE KEY UPDATE version=VALUES(version),description=VALUES(description) 

content_id是PK。 如果有重复的键,我想version下检查值。如果它大于我想要插入的值,则忽略新的插入。否则,用db中的content_id来更新它。我试图先在堆栈溢出中搜索我的问题,并发现:MySQL update if value is greater than that current value。但这并不能解决我的问题。 有什么建议吗?

回答

1

INSERT INTO CONTENT (content_id, version, description) VALUES ('123', '1', 'This is an example') ON DUPLICATE KEY UPDATE version= CASE WHEN VALUES(version) > version THEN VALUES(version) ELSE version END, description= CASE WHEN VALUES(version) > version THEN VALUES(description) ELSE description END