php - 从 MySQL 中选择最新结果,其中有超过 1 行匹配 ID

标签 php mysql sql wordpress

我正在使用带有一些自定义字段的wordpress,简而言之,我会回显所有具有post_author的meta_key且不为空的行,并将同样的名称分组在一起,否则我可能会得到Pete,Steve,Pete - 当我所有的时候需要的是皮特、史蒂夫。下面是实现该功能的 SQL

$wpAuthors = $wpdb->get_results($wpdb->prepare("SELECT DISTINCT(meta_value)
FROM $wpdb->postmeta WHERE meta_value !='' AND meta_key = 'post_author'
ORDER BY meta_key ASC"));

效果很好。但是如果我将作者从 pete 更改为 steve 会怎样? 当然,wordpress 会为该帖子 ID 生成重复条目,并使用不同的自定义字段行 ID。 (两行上的帖子 ID 类似于 1100,而条目行可能是 3000 和 3001)。现在的问题是我的脚本仍然有效,因为 Pete 和 Steve 都已输入到数据库中的正确列中,但我现在需要做的是选择该帖子 ID 行的最新副本以获取最多的内容最近的作者,有道理吗?我希望如此!

最佳答案

define('WP_POST_REVISIONS', false);将此变量添加到wp-config.php中,它将阻止wordpress创建后期修订。

之后安装此插件http://wordpress.org/plugins/wp-optimize/screenshots/

现在使用上述 wp-optimize 插件删除所有后期修订。

关于php - 从 MySQL 中选择最新结果,其中有超过 1 行匹配 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18716914/

相关文章:

php - 简单的破旧,全面的 phpDocumentor 教程?

php - 使用 PHP PDO 处理失败的 UNIQUE 约束?

php - 尝试组合两个组件时推荐脚本不起作用

mysql - Rails 4 连接远程 MySQL 数据库并拉取数据库结构以便于访问

php - 使用 C API 自动插入 Mysql

sql - SQL查询-一列必须是不同的,受限列必须是最新的

sql - 判断图是否有环

php - 如何使用group by得到多个结果集?在多列上分组

javascript - 使用 jquery 从 td 元素中删除 div 和 table

mysql - 连接两个查询并用于数值除法