2017-06-06 25 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