如果你有一个很长的选择列表和最后一列的总和(当时结束时的情况),你需要将所有选定的列放在组中。或者你可以在select中的每一列周围放置一个像min,max ......这样的聚合函数来避免分组依据。是否有理由使用一种方法而不是另一种方法?
Oracle 11g
select
a.col0,
a.col1,
a.col2,
a.col3,
sum(a.aggcol)
from...
where...
group by
a.col0,
a.col1,
a.col2,
a.col3
;
OR
select
a.col0,
min(a.col1),
min(a.col2),
min(a.col3),.....
sum(a.aggcol)
from...
where...
group by
a.col0
;