【发布时间】:2013-07-23 18:08:00
【问题描述】:
我希望你能帮我解决一个我似乎无法理解的 SQL 语句。
我有一张表格,上面有访问的列表,包括访问的国家和日期,例如:
- 英国,2009 年 11 月 1 日
- 德国,2010 年 6 月 8 日
- 弗兰,2011 年 9 月 10 日
- 英国,2011 年 10 月 11 日
等等
我想提取数据以便得到如下表格列表
访问次数 - 国家/地区列表
- 23 - 英国
- 10 - 法国、德国
- 4 - 捷克共和国、美国、加拿大
- 1 - 波兰、塞尔维亚、阿根廷、新西兰
所以数据显示我访问了捷克共和国、美国和加拿大 4 次
还有查询
select * from
(
select count(*) as "trips", country from trip_view
group by country
order by 1 desc
) as a
返回数据
- 23 英国
- 10 法国
- 10 德国
- 4捷克共和国
- 4 美国
- 4 加拿大
- 等
所以我需要一种关于外部 SQL 的组,但是如果我执行以下操作
select * from
(
select count(*) as "trips", country from trip_view
group by country
order by 1 desc
) as a
group by trips
然后我只能为每个国家/地区获得 1 个条目。即
- 23 英国
- 10 法国
- 4捷克共和国
- 等
因此,对于每一行,我只列出了 1 个国家,而不是全部。即第 2 行应显示法国和德国,第 3 行应显示捷克、美国和加拿大
任何想法如何在 mysql 中执行此操作?
谢谢
【问题讨论】: