2017-09-04 37 views
0

我正在使用WordPress,我需要为某些特定的post_id更新特定的meta_key值。当使用两个条件更新字段时,MySQL查询语法错误

所以我写这行查询

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'line1

任何人都可以帮助我吗?

谢谢

+0

与AND之间的空格也许...? – CBroe

回答

1

试试这个版本:

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

唯一明显的语法问题,我看到的是,最后的单引号是卷曲的 - 这是不是SQL正确。

+0

谢谢解决 – FRA