这是我的疑问:
update `zen_meta_tags_products_description`
set `metatags_keywords`= 'ice machine, ice maker, ice flaker, Brema,'
WHERE `products_id` = ('1231'; '1232'; '1233'; '1234'; '1235'; '1236'; '1237'; '1238'; '1239'; '1240';)
错误
MySQL说:文档
1064 - 您的SQL语法出错;查看与您的MySQL服务器版本对应的手册,以获得正确的语法,以便在' 1232,1233'附近使用。在第1行
答案 0 :(得分:3)
您无法使用=
来比较多个值。您需要使用IN()
。 IN()
中值的分隔符是逗号,而不是半冒号。最后一个也没有必要,会导致错误。除非您确实将它们存储为字符串,否则ID周围的引号也不是必需的。
update zen_meta_tags_products_description
set metatags_keywords= 'ice machine, ice maker, ice flaker, Brema,'
WHERE products_id IN(1231, 1232, 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240)
答案 1 :(得分:1)
从列表中删除分号而不是=使用IN来获取写入结果:
UPDATE `zen_meta_tags_products_description`
set `metatags_keywords`= 'ice machine, ice maker, ice flaker, Brema,'
WHERE `products_id` IN ('1231', '1232', '1233','1234', '1235', '1236', '1237', '1238', '1239', '1240') ;