我一直在切换到拉曼SQL棒球数据库的脱机版本时遇到问题。我正在使用嵌入到EDX课程中的终端。此命令在Web终端上运行良好:
SELECT concat(m.nameFirst,concat(" ",m.nameLast)) as Player,
p.IPOuts/3 as IP,
p.W,p.L,p.H,p.BB,p.ER,p.SV,p.SO as K,
p.IPOuts+p.W*5+p.SV+p.SO-p.BB-p.L-p.H as PTS,
p.yearID as Year
FROM Pitching p
Inner Join Master m
ON p.playerID=m.playerID
WHERE p.yearID=2014 AND p.IPOuts>=50
GROUP BY m.playerID
ORDER BY PTS DESC;
它正在运行SQL 5.5.46,但是当我使用运行5.7.10的脱机版本时,出现以下错误代码:
错误代码:1055。SELECT列表的表达式#1不在GROUP
BY子句中,并且包含未聚合的列’stats.m.nameFirst’,该列在功能上不依赖于GROUP BY子句中的列。这与sql_mode =
only_full_group_by不兼容
我一直在阅读许多解决人们问题的解决方案,但在这种情况下它们没有帮助。这是以前从未发生过的,所以我认为这是非常明显的,或者我对编码的了解还不错。无论如何,有人知道如何解决此问题吗?
在5.7中,sqlmode默认设置为:
ONLY_FULL_GROUP_BY,NO_AUTO_CREATE_USER,STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION
要删除子句ONLY_FULL_GROUP_BY,您可以这样做:
SET sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
假设您需要使用非聚合列来创建该GROUP BY。
问候
查询: 有人有解决办法吗?
下面的CodeIgniter查询给出了一个错误提示; SELECT列表的表达式#22不在GROUP BY子句中,并且包含非聚合列'HW3.1.HW_COMABETY.ID',该列在功能上不依赖于GROUP BY子句中的列;这与sql_mode=only_full_group_by不兼容
问题内容: 我有一个在MySQL 5.6上运行良好的存储过程。在最近的服务器迁移中,我们升级到MySQL 5.7.19。 我的存储过程现在抛出错误: 我已经设置了对通过文件,重新启动mysql服务,并通过控制台,以确认登录的通过是空白 尽管如此,当我尝试运行存储过程时,我仍然收到上述错误。 接下来,我该怎么办才能继续排除错误的出处? 问题答案: 根据文档,MySQL使用创建该过程时处于活动状态的s
问题内容: 我的查询: mysql 5.7.9运行查询没有任何问题,但是mysql 5.7.12显示上面的错误,请您帮我 问题答案: 我为此进行了艰苦的工作,我已经对其进行了测试,并且它在灯泡服务器mysql版本5.12上正常工作 因此,成功的步骤: 滚动到文件底部复制并粘贴 到文件的底部 保存并退出输入模式 重新启动MySQL。 做完了!
我的疑问: mysql 5.7.9运行查询没有任何问题,但mysql 5.7.12显示上面的错误,您能帮助我吗
你能告诉我最好的解决办法... 我需要像这样的结果