当前位置: 首页 > 知识库问答 >
问题:

Mysql函数求和错误[重复]

庾鸿飞
2023-03-14
SELECT first_name, last_name, SUM(amount)
FROM customer
LEFT JOIN payment
ON customer.customer_id=payment.amount
ORDER BY amount DESC
LIMIT 10;

我得到错误:

#1140-在没有GROUP BY的聚合查询中,SELECT列表的表达式#1包含非聚合列'SAKILA_TAK14.CUSTOMER.FIRST_NAME';这与sql_mode=only_full_group_by不兼容

共有1个答案

黎浩然
2023-03-14

V5.7.5及以上版本的MySQL实现了对聚合函数的更严格的使用&在select列表和ORDER BY列表(或HAVING子句)中不允许非聚合列。参见:https://dev.mysql.com/doc/refman/5.7/en/group-by-handling.html

此外,您也不能按amount列排序&得到您期望的顺序(如果您将setting ONLY_FULL_GROUP_BY设置为false选项)--因为您已经对其进行了求和&结果列将不再称为amount--您需要使用别名。

您需要按名字和姓氏分组:

SELECT first_name, last_name, SUM(amount) summedammount
FROM customer LEFT JOIN payment
ON customer.customer_id=payment.amount
GROUP BY first_name, last_name
ORDER BY summedammount DESC
LIMIT 10;
SELECT ANY_VALUE(first_name), ANY_VALUE(last_name), SUM(amount) summedammount
FROM customer
LEFT JOIN payment
ON customer.customer_id=payment.amount
ORDER BY summedammount DESC
LIMIT 10;
 类似资料:
  • 我正在一个WordPress网站上工作——它有大量的自定义代码和插件以及各种JQuery、引导和框架加载。 在最后一个加载页脚的最底部-I处: 我得到了错误: 显然,JQuery已经加载。我也尝试过在那里放置其他JQuery——除了加载的JQuery之外——我得到了相同的错误。 为什么我会得到$nota函数错误?

  • 问题内容: 当尝试使用str_to_date()将我的Estimates表中的字符串日期值的列CreatedDate转换为mySQL日期格式时,我一直收到错误消息。我的数据列包含m/ d / yy格式的日期(例如:1/26/16或3/3/16)。 我跑了这个查询: mySQL返回此错误消息: 我的查询出了什么问题? 问题答案: 清理数据的通常策略如下: 然后,当您确信一切都正确转换后: 适当字段的

  • 问题内容: 我正在使用MySQL v5.1.36,并且正在尝试使用此代码创建存储功能。 当输入MySQL控制台时,我得到此响应。 从网上可以找到我的语法是正确的。我究竟做错了什么? 问题答案: 我通过在变量周围添加``解决了我的问题。这是我最终得到的代码。

  • 尝试从组件订阅HTTP-GET的解析响应。得到一个错误的说法。无论是从HTTPService还是从组件类使用,map都不是一个函数。 但以下工作: 解析在Httpdemo服务中也不起作用。 我的代码中的用法有什么问题?

  • 我有一个用PHP和MySQL开发的项目。 为什么我有一个错误,如果应用程序运行正确没有容器??

  • 我的firebase函数有一些重大问题。我正在尝试创建一个请求,以便将数据发送到Firebase。 我有一个超级简单的代码要测试,它会导致错误: 这是我的代码(此代码应该没有问题): 我的文件有700行长。。如果没有,它部署得非常好。。通过我得到了这些错误。。 以下是错误: !函数:创建函数finchPosts失败 HTTP错误:400,请求有错误 这里是冗长的错误消息: [2019-06-22T