使用两个条件更新字段时出现MySQL查询语法错误

时间:2017-09-04 15:05:48

标签: mysql wordpress

我正在使用WordPress,我需要为某些特定的post_id更新特定的meta_key值。

所以我写了这行查询

UPDATE `wp_postmeta`
    SET `meta_value` = '100'
    WHERE `wp_postmeta`.`post_id` IN (4100,4173) AND `meta_key` = 'data_foo’

但它返回此语法错误:

#1064 - SQL查询中的语法错误' IN(4100,4173)和meta_key =' data_foo''第1行

任何人都可以帮助我吗?

谢谢

1 个答案:

答案 0 :(得分:1)

试试这个版本:

UPDATE wp_postmeta wp
    SET meta_value = '100'
    WHERE wp.post_id IN (4100, 4173) AND wp.meta_key = 'data_foo';

我看到的唯一明显的语法问题是最终的单引号是卷曲的 - 这对于SQL来说是不正确的。