mysql插入更新如果不存在且没有唯一索引

时间:2018-03-19 16:07:41

标签: mysql sql

我看过一些类似标题的问题,但他们没有回答我的问题

我有一张这样的表

id  original    from_lang   translated  to_lang  ranking
 1   word1          es        trans1      en       0
 2   word1          es        trans2      en       1
 ...

id列是UNIQUE PRIMARY KEY AUTOINCREMENT

其他列不能是唯一的

我尝试做的事情:当我插入新行时,如果original列和from_lang列以及ranking列相同,则更新现有行但如果不相同则插入新的入口行

我试过这个

INSERT INTO words
    (original, from_lang, translated, to_lang, ranking)
VALUES
    ('word1','es','trans3','en',0)

-- ... here is mi problem because I don't know how to use 
-- ON DUPLICATE KEY UPDATE in my case that I have not UNIQUE columns

但是上面的查询插入了一个新行

Espected: Update first row where id = 1

0 个答案:

没有答案