Group by in SQL returning error: Selected non-aggregate values must be part of the associated group
Group by in SQL returning error: Selected non-aggregate values must be part of the associated group
我有一个 table 看起来像这样:
date store flag
1 5/4/2018 a 1
2 5/4/2018 a 1
3 5/3/2018 b 1
4 5/3/2018 b 0
5 5/2/2018 a 1
6 5/2/2018 b 0
我想按日期分组并存储和总结标志的数量
即table_a 下面:
date store total_flag
1 5/4/2018 a 2
3 5/3/2018 b 1
4 5/2/2018 a 1
5 5/2/2018 b 0
这就是我正在尝试的:
create multiset volatile table flag_summary as (
sel table_a.*, SUM(table_a.flag) as total_flag
group by date, store
)
with data primary index (date, store) on commit preserve rows;
上面给出了一个错误,“创建 TABLE 失败。[3504] 选定的非聚合值必须是关联组的一部分。
您选择了所有 tableA
(包括旗帜)。你应该只提取日期和商店,因为你想要标志的总和。
SELECT date, store, SUM(flag)
FROM tableA
GROUP BY date, store
我有一个 table 看起来像这样:
date store flag
1 5/4/2018 a 1
2 5/4/2018 a 1
3 5/3/2018 b 1
4 5/3/2018 b 0
5 5/2/2018 a 1
6 5/2/2018 b 0
我想按日期分组并存储和总结标志的数量
即table_a 下面:
date store total_flag
1 5/4/2018 a 2
3 5/3/2018 b 1
4 5/2/2018 a 1
5 5/2/2018 b 0
这就是我正在尝试的:
create multiset volatile table flag_summary as (
sel table_a.*, SUM(table_a.flag) as total_flag
group by date, store
)
with data primary index (date, store) on commit preserve rows;
上面给出了一个错误,“创建 TABLE 失败。[3504] 选定的非聚合值必须是关联组的一部分。
您选择了所有 tableA
(包括旗帜)。你应该只提取日期和商店,因为你想要标志的总和。
SELECT date, store, SUM(flag)
FROM tableA
GROUP BY date, store