子查询加入错误

sh_ar

“使用子查询,列出订单总数(包含该产品)大于 500 的所有产品(产品编号、品牌和类别)”

在子查询之前,我尝试使用连接:

SELECT PRODUCT.PRODUCT_NO, PRODUCT.BRAND,PRODUCT.PRODUCT_CATEGORY
FROM PRODUCT JOIN ORDERLINE
ON PRODUCT.PRODUCT_NO = ORDERLINE.PRODUCT_NO
WHERE SUM(ORDERLINE_NO) >= 500 ;

并得到以下错误;

ORA-00934: group function is not allowed here
00934. 00000 -  "group function is not allowed here"
*Cause:    
*Action:
Error at Line: 28 Column: 6
吴宇森

你快到了,但是因为你使用了聚合函数,你必须有一个GROUP BY子句和一个HAVING子句来过滤聚合结果:

SELECT PRODUCT.PRODUCT_NO, 
       PRODUCT.BRAND,
       PRODUCT.PRODUCT_CATEGORY 
FROM PRODUCT JOIN ORDERLINE ON PRODUCT.PRODUCT_NO = ORDERLINE.PRODUCT_NO 
GROUP BY PRODUCT.PRODUCT_NO, 
       PRODUCT.BRAND,
       PRODUCT.PRODUCT_CATEGORY
HAVING COUNT(ORDERLINE_NO) >= 500 ;

并使用COUNT()代替SUM().

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章