0

当我尝试在配置单元中的 GroupBy 列上使用内置 UDF 函数或我自己的 UDF 函数时,如下所示,我似乎遇到了错误

select col1, col2 from xyz group by my_func(col1), col2

它一直在抱怨column –col1 not found in group by expression

4

3 回答 3

2

当您将函数应用于列时,它不再被称为相同的东西。您应该使用as关键字显式命名它。

select group1, group2 from xyz group by my_func(col1) as group1, col2 as group2;

此外,如果您只选择分组依据的列,而不是实际分组的数据,distinct那么可能比group by?

于 2012-10-15T17:34:01.967 回答
1

对聚合函数的调用位于错误的位置。应按如下方式进行:

从 xyz 组中选择 my_func(col1),col2 by col1,col2

于 2012-10-15T16:12:32.233 回答
0
select col1, col2 from xyz group by my_func(col1) as col1, col2 

基本是您的 GROUP BY 需要具有您在 SELECT 子句中提到的所有列。

于 2017-02-09T12:28:29.683 回答