mysql - 使用 ORDER BY 选择计数 (*)

标签 mysql sql

我想问你,如果我在 SELECT COUNT(*) 中使用这个 ORDER BY 是否正确

Orginal: SELECT count(*) AS cnt FROM players WHERE totalpoints>?    

Modified: SELECT count(*) AS cnt FROM players WHERE totalpoints>? ORDER BY timeontheserver DESC    

在原始查询中,它输出数据库中给定“排名”的玩家。

但我刚刚注意到一些“玩家”拥有相同数量的点数,但他们有点相反。所以它应该给玩家“在服务器上停留的时间”越多,“排名”就越高。 我希望你能理解这一点,谢谢。

最佳答案

COUNT(*) 会给你一个数字,你会想在你订购的字段上进行分组以获得你想要的东西。

SELECT timeontheserver ,count(*) AS cnt FROM players 
WHERE totalpoints>? GROUP BY timeontheserver  ORDER BY timeontheserver DESC   

关于mysql - 使用 ORDER BY 选择计数 (*),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28222728/

相关文章:

sql - 如何使用自连接和分组依据编写查询?

php - MySQL & PHP - 选择 6 行,每行有不同的 'WHERE' 子句

php - 如何在php中恢复mysql数据库

php - "SQLSTATE[42000] [1044] Access denied for user ' 团队 '@' 本地主机 ' to database ' 我的数据库 ''

sql - 在 MySQL 中加入多个不相关的表

mysql - 将mongodb迁移到mysql?

mysql - SQL 连接表,所有客户的总支出

sql - SQL Server 中的条件 XML 修改

mysql - SQL ORDER BY 多列

php - MySQL UPDATE 语句未按预期锁定行