我有一个非常简单的查询(在Oracle 11g上)来选择3个字段:
select field1, field2, field3, count(*) from table
where...
group by field1, field2, field3
having count(*) > 10;
现在,我需要从“group by”中排除“field3”,因为我只需要对字段1和2进行分组,但我还需要在输出中包含field3。据我所知,SELECT中的所有字段都必须在“GROUP BY”中报告,我该如何处理呢?
谢谢卢卡斯
4条答案
按热度按时间8gsdolmq1#
vohkndzv2#
使用“count”函数的analytical version:
fykwrbwg3#
如果您不再按
field3
分组,则每个组可能会突然有不同的field3
。您必须决定显示哪一个,例如最大值:pb3skfrl4#
我知道如何处理的唯一方法是首先隔离Field1和Field2数据并创建一个新表,然后将其链接回添加到Field3中的原始表。