wangjuju123

2018-10-19   阅读量: 828

数据分析师 Mysql

Invalid use of group function?

扫码加入数据分析学习群

在使用MySQL数据库时,经常会遇到一个错误提示:Invalid use of group function。意思是没有正确使用group function。当查询的结果指代不明,或者和接受结果的变量数据类型不匹配时,都会导致这个错误提示。因此,遇到这个错误时,首先就考虑这两个地方有没有出问题。

代码示例:

-- 原来的代码

DELIMITER $

CREATE PROCEDURE test_1(INOUT n DOUBLE)

BEGIN

SELECT cou.couName,AVG(s.score)

FROM course cou,score s

WHERE cou.couName='masql' AND cou.examTime='2014-04-04'AND s.courseId=cou.id;

SELECT n;

SET n=AVG(s.score);

END $

SET @n=0.00;

CALL test_1(@n); -- 由于查询结果指代不明,会提示Invalid use of group function。SELECT @n;

-- 修改后的代码

DELIMITER $

CREATE PROCEDURE test_2(INOUT n DOUBLE)

BEGIN

SELECT cou.couName,AVG(s.score)

FROM course cou,score s

WHERE cou.couName='masql' AND cou.examTime='2014-04-04'AND s.courseId=cou.id;

SELECT n;

SET n=(SELECT AVG(s.score)

FROM course cou,score s

WHERE cou.couName='masql' AND cou.examTime='2014-04-04'AND s.courseId=cou.id );

END $

SET @n=0.00;

CALL test_2(@n); -- 结果正常

SELECT @n;

版权声明:本文为博主原创文章,转载请附上博文链接!

添加CDA认证专家【维克多阿涛】,微信号:【cdashijiazhuang】,提供数据分析指导及CDA考试秘籍。已助千人通过CDA数字化人才认证。欢迎交流,共同成长!
0.0000 0 4 关注作者 收藏

评论(0)


暂无数据

推荐课程