【问题标题】:MySql update fields based on other fieldsMySql 根据其他字段更新字段
【发布时间】:2012-05-11 01:23:30
【问题描述】:

我正在尝试为另一个自定义元字段等于 1 的所有 WordPress 帖子更新自定义元。

我的桌子是这样的

meta_id | post_id |元密钥 |元值
------------------------------------------------
0001 |第1234章_p_free | 1
0002 |第1234章new_free |空值
0003 |第2345章_p_free | 1
0004 |第2345章new_free |空值
0005 | 9876 | _p_free | 0
0006 | 9876 | new_free |空

所以,如您所见,我想做的是运行一个查询,查找所有具有 meta_key = _p_free 和 meta_value = 1 的帖子,然后将具有相同 post_id 的 new_free 更新为也等于 1。

谢谢

【问题讨论】:

  • update yourtable set field1=field2+field3 where field4=somevalue?

标签: mysql database wordpress


【解决方案1】:

您需要将multiple-table UPDATE syntax 与自联接一起使用:

UPDATE tbl AS t1 JOIN tbl AS t2 USING (post_id)
SET t1.meta_value = 1
WHERE t2.meta_key = '_p_free' AND t2.meta_value = 1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-30
    • 2019-07-20
    • 2016-02-20
    • 1970-01-01
    • 1970-01-01
    • 2013-08-04
    • 1970-01-01
    • 2018-04-23
    相关资源
    最近更新 更多