UPDATE IGNORE with function LOWER() in WHERE-clause 啥都不做

Posted

技术标签:

【中文标题】UPDATE IGNORE with function LOWER() in WHERE-clause 啥都不做【英文标题】:UPDATE IGNORE with function LOWER() in WHERE-clause does nothingUPDATE IGNORE with function LOWER() in WHERE-clause 什么都不做 【发布时间】:2018-10-16 00:02:47 【问题描述】:

我有一张很小的桌子discs 像这样

freedbdiscid 名称 dtitle 流派 年份 曲目 -------------------------------------------------- -------------------------------------------------- -- 0 4010755600 岛上的人新的一天 - 住在拉斯维加斯流行音乐 2004 16 1 4010755600 MAN ON AN ISLAND A New Day - Live in Las Vegas Pop 2004 16

我想用什么来改变

UPDATE IGNORE discs SET aname = 'Man on an Island' WHERE LOWER(aname) LIKE 'man on an island';

改变了……什么都没有

我预计至少会有一个警告或两个重复的条目,因为应该不再有大写标题。 UPDATE 中的 WHERE 子句似乎与第二行不匹配,这对我来说是不可能的。你有看到什么吗?我不知道这里发生了什么......岛';

【问题讨论】:

"我预计至少会有一个警告" 从查询中删除 IGNORE 关键字。 【参考方案1】:

IGNORE - 笨拙的我,不用也可以!

【讨论】:

以上是关于UPDATE IGNORE with function LOWER() in WHERE-clause 啥都不做的主要内容,如果未能解决你的问题,请参考以下文章

INSERT IGNORE & UPDATE VS INSERT...ON DUPLICATE KEY UPDATE [重复]

MySql避免重复插入记录方法(ignore,Replace,ON DUPLICATE KEY UPDATE)

MySql避免重复插入记录方法(ignore,Replace,ON DUPLICATE KEY UPDATE)

MySql避免重复插入记录方法(ignore,Replace,ON DUPLICATE KEY UPDATE)

MySql避免重复插入记录方法(ignore,Replace,ON DUPLICATE KEY UPDATE)

sqlite3:对多个唯一列进行INSERT或IGNORE或UPDATE