我正在试图弄清楚如何在一个大型wordpress数据库中快速更改一些内容,通过GUI进行永久性的操作,我认为在数据库上执行这个方法会更有效率,因为它是一次性的事情。
我有以下表格:
tf.one_hot
如果匹配 term_taxonomy_id ,我需要在表 wp_termrelationships 中执行查找 term_taxonomy_id '8232'的mysql查询8232'然后获取该匹配的 object_id 并使用该数据搜索表 wp_posts 列 ID 以获得匹配。如果在表格 wp_posts 列 ID 中找到匹配项,请将每个帖子的 post_status 更新为“发布”
除了表wp_posts中的post_status之外,没有任何更改。
对我来说这个查询非常复杂,有什么想法吗?
答案 0 :(得分:2)
让我们解构您的需求,并构建查询:
我需要执行一个mysql查询,在表wp_termrelationships
中查找term_taxonomy_id'8232'
SELECT object_id
FROM wp_termrelationships
WHERE term_taxonomy_id = 8232
如果匹配term_taxonomy_id'8232',则获取该匹配的object_id并使用它来搜索表wp_posts列ID,以获取object_id中匹配所获得的数据
这里我使用子查询:
SELECT *
FROM wp_posts
WHERE ID IN (SELECT object_id
FROM wp_termrelationships
WHERE term_taxonomy_id = 8232)
找到这些匹配后,将表wp_posts中每个匹配帖子的post_status更新为“发布”
UPDATE wp_posts
SET post_status = 'publish'
WHERE ID IN (SELECT object_id
FROM wp_termrelationships
WHERE term_taxonomy_id = 8232)
我认为term_taxonomy_id是一个整数。