php - 如何根据这些标准对数据库记录进行排序?

标签 php mysql

我有一个名为 ma​​tches 的表,其中包含这 4 个字段(均为整数):

1.id
2.team1
3.team2
4.winner_team

一些示例记录,以便您可以看到它的样子:

id | team1 | team2 | winner_team
--------------------------------
1  | 3     | 15    | 3
--------------------------------
2  | 20    | 8     | 8
--------------------------------
3  | 18    | 11    | 18
--------------------------------
4  | 8     | 7     | 8
--------------------------------
...

现在,我需要根据团队的获胜次数对表格进行排序。例如。在示例中,您会看到 winner_team 的数量没有。 8 是 2(在我的真实表中有更多的记录,因此 winner_team 可以有例如 10 次或更多次)。

基本上,我希望根据获胜次数从最佳到最差排名前 20 名的球队,这代表球队作为 winner_team 的次数。是 team1 还是 team2 根本无关紧要。

我觉得我需要使用 group_by 或类似的东西,但我不知道该怎么做。

有人可以帮我解决这个问题的 mysql select 和 php 代码吗?

提前致谢。

最佳答案

select winner_team, count(id) as wins
from your_table
group by winner_team
order by wins desc
limit 20

关于php - 如何根据这些标准对数据库记录进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12828033/

相关文章:

mysql - 触发和信号逻辑

php - 使用 Codeigniter 搜索具有限制的多个 mysql 表

javascript - 创建横幅,动态使用目录中的所有图像

php - 如何覆盖 drupal View 寻呼机查询?

mysql - 具有重复值的多列

mysql - 最近消息的 SQL 查询

MySQL 查询 : start date but no end date

javascript - 如何从 JavaScript 中的服务器链接获取文件的直接链接?

php - 优雅的数据库设计帮助...(MySQL/PHP)

javascript - 如何使用 jquery 将表单输入字段值传递给外部页面