mysql - 选出运动项目最少的5个运动项目

标签 mysql sql database postgresql

我有这张运动 table :

CREATE TABLE Sports(
    name_sport VARCHAR(50) PRIMARY KEY,
    categories_sport VARCHAR(50),
    type_result_sport VARCHAR(50),
    discipline TEXT,
    enEquipe BOOLEAN 
);

我填充了如下数据:

('Women''s 50m Freestyle','freestyle','aquatics','temps','FALSE'),

('Trap Women','shooting','shooting','temps','FALSE'),
('10m Air Pistol Men','shooting','shooting','score','FALSE'),
('10m Air Rifle Men','shooting','shooting','score','FALSE'),

('Women''s Discus Throw','throws','athletics','score','FALSE'),
('Women''s Hammer Throw','throws','athletics','score','FALSE'),
('Women''s Javelin Throw','throws','athletics','score','FALSE'),
('Men''s 100m','track','athletics','temps','FALSE'),

('Women''s Doubles','badminton','badminton','temps','TRUE'),
('Women''s Singles','badminton','badminton','temps','FALSE'),
('Men''s Doubles','badminton','badminton','temps','TRUE'),
('Men''s Singles','badminton','badminton','temps','FALSE'),

('Lightweight Women''s Double Sculls','rowing','rowing','temps','FALSE'),
('Women''s Double Sculls','rowing','rowing','temps','FALSE'),
('Women''s Eight','rowing','rowing','temps','FALSE'),
('Women''s Pair','rowing','rowing','temps','FALSE'),
('Women''s Quadruple Sculls','rowing','rowing','temps','FALSE'),
('Women''s Single Sculls','rowing','rowing','temps','FALSE'),
('Lightweight Men''s Double Sculls','rowing','rowing','temps','FALSE'),
('Lightweight Men''s Four','rowing','rowing','temps','FALSE'), 

('Women''s +75kg','weightlifting','weightlifting','score','FALSE'),
('Women''s 48kg','weightlifting','weightlifting','score','FALSE'),
('Women''s 53kg','weightlifting','weightlifting','score','FALSE'),
('Women''s 58kg','weightlifting','weightlifting','score','FALSE'),
('Women''s 63kg','weightlifting','weightlifting','score','FALSE'),
('Women''s 69kg','weightlifting','weightlifting','score','FALSE'),
('Women''s 75kg','weightlifting','weightlifting','score','FALSE'),
('Men''s +105kg','weightlifting','weightlifting','score','FALSE'),
('Men''s 105kg','weightlifting','weightlifting','score','FALSE'),
('Men''s 56kg','weightlifting','weightlifting','score','FALSE'),
('Men''s 62kg','weightlifting','weightlifting','score','FALSE'),
('Men''s 69kg','weightlifting','weightlifting','score','FALSE'),
('Men''s 77kg','weightlifting','weightlifting','score','FALSE'),
('Men''s 85kg','weightlifting','weightlifting','score','FALSE'),
('Men''s 94kg','weightlifting','weightlifting','score','FALSE'),

我正在尝试选择运动项目较少的 5 个类别(水上运动、田径、射箭......)(男子 100 米、女子 50 米自由泳......)

在这种情况下,输出将是:

Aquatics
Athletics
Shooting
badminton
rowing

谢谢

编辑 1:添加了更多示例数据和所需的输出。

最佳答案

请试试这个。 group by语句分组类别,order by order by orders results by orders results by occurrences on each category, limit 限制返回结果数为5

 select categories_sport, count(*) as cnt
   from Sports
  group by (categories_sport)
  order by cnt asc
  limit 5

关于mysql - 选出运动项目最少的5个运动项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53804961/

相关文章:

mysql - 如何统计mysql中的记录数并添加它们?(使用tally)

php - 如何在 laravel 中备份/导出连接的数据库 database.sql 文件?

mysql - 在没有 CTE 的情况下删除 MySql 中的多行

python - 查询期间失去与 MySQL 服务器的连接

phpmyADMIN 还是 mySQL?我对 PHP 有点困惑

SQL Server 更新后触发器

sql - 如何在其中使用通配符?

php - 我无法更新mysql数据库

mysql - 如何从 phpMyAdmin 数据库中查找连接字符串?

database - Codeigniter:使用语言助手和数据库的多语言