【问题标题】:I need the right query for the following [closed]我需要对以下内容进行正确的查询[关闭]
【发布时间】:2019-03-29 22:24:46
【问题描述】:

这是“客户”表

ID  Name Country
1   A   UK
2   B   CN
3   C   IN
4   D   GB
5   E   CN
6   F   GB
7   H   UK
8   I   IN

需要查询以显示每个国家/地区的客户数量。英国和英国应该被视为一个国家。

【问题讨论】:

  • 提示:GROUP BY。你应该展示你尝试过的东西,如果不起作用,那么有人可以帮助改进它。
  • 我试过了,但没有得到完整的答案.. 请记住 gb 和 uk 应该被视为单一国家.. SELECT COUNT(Id), Country FROM Customer GROUP BY Country
  • 您能否提供一个列来确定哪些国家属于同一国家?
  • 嗨@IqraAslam!为避免将来被否决,查看我们的 How to Ask 页面可能会有所帮助。

标签: sql sql-server


【解决方案1】:

使用CASE 表达式:

SELECT (CASE WHEN country = 'GB' THEN 'UK' ELSE country END) as country,
       COUNT(*), Country
FROM Customer
GROUP BY (CASE WHEN country = 'GB' THEN 'UK' ELSE country END);

【讨论】:

    猜你喜欢
    • 2016-12-03
    • 1970-01-01
    • 2016-12-10
    • 1970-01-01
    • 2021-02-24
    • 2016-06-07
    • 2019-03-02
    • 1970-01-01
    • 2017-06-29
    相关资源
    最近更新 更多