我的表格如下:
+------+------+------+
| prov | amnt | type |
+------+------+------+
| on | 10 | 1 |
| on | 10 | 1 |
| on | 12 | 2 |
| ab | 10 | 1 |
| ab | 12 | 2 |
| ab | 12 | 2 |
| qc | 12 | 2 |
| qc | 13 | 3 |
| qc | 13 | 3 |
+------+------+------+
我想返回一个表格,其中每个文件都有一个按类型分组的摘要,每个类型的总和和计数如下:
+------+-------+------+------+
| prov | total | type | count|
+------+-------+------+------+
| on | 20 | 1 | 2|
| on | 12 | 2 | 2|
| ab | 10 | 1 | 1|
| ab | 24 | 2 | 2|
| qc | 12 | 2 | 1|
| qc | 26 | 3 | 2|
+------+-------+------+------+
基本上,如果我为每个省份进行三次手动输入查询,我会在三个不同的表格中获得三个不同查询的数据。
SELECT prov, SUM(fine) AS total, code, COUNT(code) AS COUNT
FROM table
WHERE prov = 'on'
GROUP BY code;
+------+-------+------+------+
| prov | total | type | count|
+------+-------+------+------+
| on | 20 | 1 | 2|
| on | 12 | 2 | 2|
+------+-------+------+------+
答案 0 :(得分:0)
答案 1 :(得分:0)
将prov
添加到group by
:
SELECT prov, SUM(fine) AS total, code, COUNT(code) AS COUNT
FROM table
GROUP BY prov, code;
答案 2 :(得分:0)
您需要按照提示和类型进行分组。这就是你需要的:
static BOOL isRunningTests(void)
{
NSDictionary* environment = [[NSProcessInfo processInfo] environment];
NSString* injectBundle = environment[@"XCInjectBundle"];
return [[injectBundle pathExtension] isEqualToString:@"xctest"];
}
答案 3 :(得分:0)
将您的查询更改为:
select
`prov`, sum(`amnt`) as `total`, count(*) as `count`, `type`
group by `prov`, `type`;