有人能解释为什么这个查询需要Oracle中的GROUP BY子句,而MSSQL,MySQL和Postgresql中完全正常吗?为什么这个查询需要Oracle中的group by子句
select count(*)/(select count(*) from dual)from dual
甲骨文抱怨
"[Error] Execution (1: 27): ORA-00937: not a single-group group function"
如果我改变它,通过这样的
select count(*)/(select count(*) from dual)from dual
group by null
那么它的罚款甲骨文添加虚拟组。为什么Oracle需要这个组?
您能否提供真正的查询,您的示例没有任何意义。 –
我提供了这一个,使其尽可能抽象,但当然这里来自Northwind DB。从OrderDetails中选择总和(UnitPrice *数量)/(从订单中选择数量(*)) – olek
@WernfriedDomscheit - 如果使用任何实际表格更改'dual',结果将是相同的 –