首页 > 解决方案 > 如何通过使用 sum(column) 设置空列进行分组?

问题描述

SELECT 
  NAME, 
  DESCRIPTION, 
  NULL "REMARKS", 
  SUM(PRICE) 
FROM PRODUCT 
GROUP BY NAME, DESCRIPTION, NULL;

然后我收到此错误消息“不是 GROUP BY 表达式”

或者

SELECT 
    NAME, 
    DESCRIPTION, 
    NULL "REMARKS", 
    SUM(PRICE) 
FROM PRODUCT 
GROUP BY NAME, DESCRIPTION, REMARKS;

然后我收到这些错误消息 "REMARKS": invalid identifier 和 "%s: invalid identifier"

谁能纠正我这个查询?

标签: sqloracle

解决方案


尝试以下操作,在您的第一个查询中,您不需要添加NULLintogroup by子句。您只需要添加表中group by存在的列。

SELECT 
  NAME, 
  DESCRIPTION, 
  NULL  as "REMARKS", 
  SUM(PRICE) 
FROM PRODUCT 
GROUP BY NAME, DESCRIPTION;

在您的第二个查询中,错误提示它无法Remarksgroup by往常一样执行 before select


推荐阅读