使用count(*)DESC时,为什么不会按顺序显示结果

时间:2015-07-30 01:56:21

标签: php mysql

我正在尝试获取结果并按顺序降序列出。一切正常,但最后的结果不是出于某种原因,如下所示。什么可能导致最后一条记录没有按顺序列出?

名称得分
周杰伦19
克里斯12
洛克1个
麦克3

以下是相关代码:

$results = $dbh->prepare("select 
wp_users.ID,
wp_users.display_name,
points.ID,
points.PID,
SUM(points.PID) AS total
FROM points
LEFT JOIN wp_users ON points.ID=wp_users.ID
GROUP BY points.ID ORDER BY count(*) DESC 
LIMIT 4");

1 个答案:

答案 0 :(得分:3)

据推测,您希望按总计排序:

order by total desc

或:

order by sum(points.pid) desc

您获得的顺序取决于匹配记录的数量,而不是输出中的总和。