我的表sec1202具有四列:row_id,col_1,col_2和col_3。
我被赋予了这个任务:
编写一条select语句,该语句按col_1中的值对行进行分组,并为每个组确定col_3中的值之和。
这是SEC1202表的屏幕截图
这是我的代码:
select col_1, count(col_3) as column_three_values,
from sec1202
group by col_3;
这是错误:
SELECT语句包含的保留字或参数名称拼写错误或丢失,或者标点符号不正确
任何帮助将不胜感激!
答案 0 :(得分:0)
您正在按错误的列分组,并且您想要sum()
:
select col_1, sum(col_3) as column_three_values
from sec1202
group by col_1;
-------------^
group by
子句中的键通常不作为聚合函数(例如sum()
或count()
)的参数出现。 select
中的未聚合列通常是键。
即使问题明确要求总和,您也使用count()
而不是sum()
。
答案 1 :(得分:0)
您有多个错误:
,
陈述前有一个流浪者FROM
,COUNT
时正在使用SUM
,并且col_3
分组时,您正在按col_1
分组。第一个是导致您看到的错误的原因。其他只是意味着您的结果将是错误的。
正确的SQL将是:
SELECT col_1,
SUM(col_3) AS column_three_values
FROM sec1202
GROUP BY col_1;
请注意,为了便于阅读和清楚起见,通常使用大写保留字和内置函数名,例如SELECT
,SUM
,FROM
等。