我有一张大桌子:create table data( id bigint unsigned auto_increment primary key, first varchar(120) null, last_ varchar(120) null, country varchar(30) not null) collate = utf8mb4_unicode_ci;我需要在列表中显示来自各个国家/地区的人数。我有一个典型的 SQL 查询:public function getAll(): array { $this->db->query('SELECT * FROM data ORDER by id DESC;'); return $this->db->resultSet(); }但我不知道如何分组我的结果:(我打印我的结果:$this->model->getAll()然后foreach....结果我需要:1. 10 users from Poland; 2. 101 users from Germany; 3. 99 users from UK....请帮我
1 回答

慕村9548890
TA贡献1884条经验 获得超4个赞
您似乎在寻找简单的聚合:
select country, count(*) no_users from data group by country order by country;
这为您提供了两列,分别是国家和用户数量。然后您可以在您的应用程序中生成正确的字符串输出。
- 1 回答
- 0 关注
- 132 浏览
添加回答
举报
0/150
提交
取消