sql - 通过 SQL 查询获取分组中的相关列
问题描述
我有一个数据库,其中包含与国家相关的数据,简化后看起来像这样:
ID | country_id | country_ISO | var_value
1 | 1 | FR | 10
2 | 2 | BE | 15
3 | 3 | NL | 20
4 | 1 | FR | 6
5 | 2 | BE | 8
6 | 2 | BE | 12
我想得到“var_value”的值的总和,但是我想拥有 country_id 以及 country_ISO。
我可以做这个:
SELECT
country_ISO,
SUM(var_value) AS sum_of_value
FROM
table_name
GROUP BY
country_ISO;
这个查询会给我 var_value 和国家 ISO 的总和,但我也想得到 country_id。如何子查询/自连接以获取与(以独特方式)相关的额外列,例如 country_ISO?
解决方案
只需将该列也包含在GROUP BY
子句中:
SELECT country_id, country_ISO, SUM(var_value) AS sum_of_value
FROM table_name tn
GROUP BY country_id, country_ISO;
推荐阅读
- swift - 后台线程 Core Data 对象属性更改不会反映在 UI 上
- java - 班级
> 不是 Class 的超类 >? - char - 如何在 C 语言 'a' + 'b' = -61 中添加两个字符值
- python - Django 频道 - Websocket 连接失败
- python - Python - 我如何将 python 文件编译成 exe 而不是 bundle
- python - 为时间分配白天或夜晚
- r - 来自不同文件的增量行子集
- javascript - Node.js module.export 与导出缓存
- java - 在java中调用Controller时如何更改主机地址
- javascript - 使 PHP 例程的 AJAX 发布请求到本地文件