Sql 错误:无法嵌套聚合函数调用

Sql 错误:无法嵌套聚合函数调用,sql,postgresql,average,Sql,Postgresql,Average,我试图在下面的查询中再包含一列,以显示其中两列的平均值。我不熟悉SQL和PostgreSQL,但参考以下链接 但是在执行相同的操作时,我得到了以下错误 ERROR: aggregate function calls cannot be nested LINE 1: ...col2,md.col3,ad.col4,mcd.col5, AVG(md.col3/m... ^ *

我试图在下面的查询中再包含一列,以显示其中两列的平均值。我不熟悉SQL和PostgreSQL,但参考以下链接

但是在执行相同的操作时,我得到了以下错误

ERROR:  aggregate function calls cannot be nested
LINE 1: ...col2,md.col3,ad.col4,mcd.col5, AVG(md.col3/m...
                                                             ^

********** Error **********

ERROR: aggregate function calls cannot be nested
SQL state: 42803
Character: 77
谁能告诉我哪里做错了,我需要纠正什么才能让它起作用

所需产出:

col1 | col2 | col3 |col4 | col5| cb|
其中,
cb
是其他两列的
平均值

任何帮助都将不胜感激

[编辑]

试图按分组,但仍然得到相同的错误,有人能纠正我在下面的查询中的错误吗

select ad.col1, ad.col2, md.col3, ad.col4, mcd.col5, 
       AVG(md.col3/mcd.col4) as cb 
from month_date as md 
 JOIN active_date as ad ON ad.col1=md.col1 AND ad.col2=md.col2 
 JOIN mdata1 as mcd ON mcd.col1=md.col1 AND mcd.col2=md.col2 GROUP BY ad.col1,ad.col2,md.col3,ad.col4,mcd.col5;
要在SQL中使用AVG()或任何类型的聚合函数,需要为正在显示的其他列设置一个GROUP BY

这样想,当您选择一列时,您将显示行。当显示平均值时,将显示单个输出。不能将行和单个输出放在一起

您需要尝试以下内容:

SELECT col1, col2, AVG(col3)
FROM table1
GROUP BY col1, col2

我用您的示例创建了一个查询,您可以看到该查询按原样工作。这可能是包装查询、存储过程或函数中的一个错误。

谢谢您,不祥,是的,您是对的。我已经在一个查询中单独完成了相同的操作,但是我如何才能在我上面提到的查询中集成相同的操作,因为我已经有了两个
内部连接
尝试如下:
选择ad.col1、ad.col2、md.col3、ad.col4、mcd.col5、AVG(md.col3/mcd.col4)作为cb从月日起作为md加入活动日作为ad.col1=md.col1和ad.col2=md.col2上的ad加入mdata1作为mcd上的mcd.col1=md.col1和mcd.col2=md.col2组,按ad.col1、ad.col2、md.col3、ad.col4、mcd.col5postgreSQL
中会出现这样的错误:(您是否有可能在另一个查询中运行此查询?
SELECT col1, col2, AVG(col3)
FROM table1
GROUP BY col1, col2