我试图在代码中实现一个查询,该查询使我能够计算收到的评分和每篇文章的评分数之间的平均值,并将文章从评分最高的文章排序到平均评分最低的文章
查看下表并实现此查询,一切都很正常。 <?php
$results = $wpdb->get_results("
SELECT comment_id, avg(meta_value) avg_meta_value
FROM {$wpdb->prefix}commentmeta
WHERE {$wpdb->prefix}commentmeta.meta_key = \'rating\'
GROUP BY comment_id
ORDER BY avg_meta_value desc");
foreach ($results as $result)
{
echo $result->comment_id.\'<br>\';
}
当我想与comments
表格:即使查询正确: <?php
$results = $wpdb->get_results("
SELECT comment_id, avg(meta_value) avg_meta_value
FROM {$wpdb->prefix}commentmeta
LEFT JOIN $wpdb->prefix}comments
ON {$wpdb->prefix}commentmeta.comment_id = $wpdb->prefix}comments.comment_ID
WHERE {$wpdb->prefix}commentmeta.meta_key = \'rating\'
GROUP BY comment_id
ORDER BY avg_meta_value desc");
foreach ($results as $result)
{
echo $result->comment_id.\'<br>\';
}
?>
正在执行print_r($ results);
我得到:Array( )
我不明白为什么,理解这一步对我进行下一次与post表的连接至关重要,这样我就可以获得所有的值out,为什么要获取数组()?
我怎样才能修复它?
。。。。和
var_dump($result); return me `NULL`