我正在尝试从我们的数据库中获取这些国家/地区中唯一的国家/地区和学生数量。我过去曾经破解过它,但不记得我做了什么。
我知道它是这样的:
select COUNT(country) as T
from (select country
from rs_user
where Email in (
select distinct(Email)
from rs_active_course))
我希望结果是这样的:
------------
| GB | 8 |
| ZA | 8 |
|美国| 8 |
| RU | 8 |
| PN | 8 |
------------
我做错了什么?
答案 0 :(得分:1)
尝试下面的查询,虽然我不知道你的架构如果你的子查询是正确的,这应该可行:
SELECT COUNT(country), country as T
FROM (SELECT country
FROM rs_user
WHERE Email in (SELECT distinct(Email)
FROM rs_active_course))
GROUP BY country
答案 1 :(得分:0)
我在这里对你的数据库结构做了一些假设,但也许这可能是你想要的?
SELECT COUNT(DISTINCT r.Email),
r.country as T
FROM rs_user as r, rs_active_course as rc
WHERE r.Email = rc.Email
GROUP BY T