gpt4 book ai didi

MySQL 平均函数未返回预期结果

转载 作者:行者123 更新时间:2023-11-29 09:31:13 25 4
gpt4 key购买 nike

我只需要获取从 2015 年 1 月 1 日开始的订单总金额的平均值。不知何故,我没有得到预期的结果。

问题陈述:返回每个客户的 ID、姓名和平均总订单数 2015年1月1日(含)起的订单金额。仅显示至少下了 2 个订单的客户。

由于涉及多个条件,我创建了包含 where、group by 和having 子句的查询,如下查询所示

SELECT c.CustomerId, c.CustomerName, AVG(o.total)
FROM db_order.Customer c JOIN db_order.orders o
on c.customerId = o.customerId
where o.orderDate >= 01-01-2015
group by o.CustomerId, c.CustomerName
having count(o.orderId) >= 2

预期输出有 6 行,实际有 8 行。即使是平均总数,返回结果也存在差异。

SQL fiddle : http://sqlfiddle.com/#!9/d872bfDb Fiddle 完整数据:https://dbfiddle.uk/?rdbms=mysql_8.0&fiddle=dd6fcb2a41634b0e4beb8acc3288e922

最佳答案

这是否可以解决您的问题:

SELECT c.CustomerId
, c.CustomerName
, AVG(o.total)
FROM Customer c
JOIN Orders o on c.customerId = o.customerId
where o.orderDate >= '2015-01-01'
group by o.CustomerId
, c.CustomerName
having count(o.orderId) >= 2

这是DEMO按要求显示 6 行...

关于MySQL 平均函数未返回预期结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58683635/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com