按状态或元价值查找所有帖子-性能差异

时间:2020-02-08 作者:wharfdale

有人知道这两个查询是否有很大的性能差异吗?

获取所有具有meta键的帖子_delete_product 并且值为TRUE,我将每晚对所有要删除的帖子进行cron清除。最好的办法是在这里以最有效的方式获取所有相关的帖子,然后再遍历它们。

1 个回复
最合适的回答,由SO网友:Yashar 整理而成

如评论中所述,post_status 存储在posts表中,但POSTETA值存储在POSTETA表中,POSTETA表通常比posts表重得多。在db查询中使用meta,会导致在查询中添加一个JOIN子句来连接这个沉重的表!

所以使用post_status 绝对是更好的性能选择。

相关推荐

列出分类法:如果分类法没有POST,就不要列出分类法--取决于定制的POST-META?

这可能很难解释,我不知道是否有解决办法!?我有一个名为“wr\\u event”的自定义帖子类型和一个名为“event\\u type”的分层自定义分类法。自定义帖子类型有一个元框,用于event_date 并且与此帖子类型关联的所有帖子都按以下方式排序event_date. 我在循环中有一个特殊的条件来查询event_date 已经发生了-在这种情况下,它没有显示,但只列在我的档案中。就像你可以使用wp_list_categories() 我编写了一个自定义函数,它以完全相同的方式列出所有分类术语。现在