Oracle10g oracle不是按表达式分组的

Oracle10g oracle不是按表达式分组的,oracle10g,Oracle10g,我有一个有三列的表 订单类别 每股资产净值 流通股数量 现在: 但是: 选择订单类别,每股资产*总额(流通股)按订单类别分组,它表示:不是按表达式分组 我遗漏了什么?您不能分组,因为每个共享的资产净值是根据结果给出的。你是说 SUM(NAV_PER_SHARE*OUTSTANDING_SHARES) ?您不能分组,因为每个共享的资产净值是根据结果给出的。你是说 SUM(NAV_PER_SHARE*OUTSTANDING_SHARES) ?从外观上看,解决方案是使用子查询 SELECT ORD

我有一个有三列的表

订单类别
每股资产净值
流通股数量

现在:

但是:

选择订单类别,每股资产*总额(流通股)按订单类别分组
,它表示:不是按表达式分组


我遗漏了什么?

您不能分组,因为
每个共享的资产净值
是根据结果给出的。你是说

SUM(NAV_PER_SHARE*OUTSTANDING_SHARES)

您不能分组,因为
每个共享的资产净值
是根据结果给出的。你是说

SUM(NAV_PER_SHARE*OUTSTANDING_SHARES)

从外观上看,解决方案是使用子查询

SELECT ORDER_CATEGORY, NAV_PER_SHARE * SUM_OF_OS
FROM (SELECT ORDER_CATEGORY, SUM(OUTSTANDING_SHARES) SUM_OF_OS
      GROUP BY ORDER_CATEGORY);

虽然,我不确定如果没有
FROM
关键字,您的一个查询如何工作。

从外观上看,解决方案是使用子查询

SELECT ORDER_CATEGORY, NAV_PER_SHARE * SUM_OF_OS
FROM (SELECT ORDER_CATEGORY, SUM(OUTSTANDING_SHARES) SUM_OF_OS
      GROUP BY ORDER_CATEGORY);
尽管如此,如果没有
FROM
关键字,我不确定您的一个查询是如何工作的。

可能重复的