如何将SQL5.6查询转换为5.7查询

如何将SQL5.6查询转换为5.7查询,sql,mysql-5.7,mysql-5.6,Sql,Mysql 5.7,Mysql 5.6,我在sql查询中面临一个问题 它适用于以前的版本-5.6 但是现在5.7版不起作用了 因此,任何人都可以帮助我将此查询转换为sql 5.7 SELECT to_startdate, to_enddate FROM tour WHERE to_name !='' AND to_startdate !='0000-00-00' AND to_deactivated !=1 GROUP BY MONTH(to_startdate), YEAR(to_startdate) O

我在sql查询中面临一个问题 它适用于以前的版本-5.6

但是现在5.7版不起作用了 因此,任何人都可以帮助我将此查询转换为sql 5.7

SELECT to_startdate, to_enddate  
FROM tour 
WHERE  to_name !='' 
   AND to_startdate !='0000-00-00' 
   AND to_deactivated !=1 
GROUP BY MONTH(to_startdate), YEAR(to_startdate) 
ORDER BY to_startdate

您的查询通常没有意义-select references列和这些列没有聚合。您可以使用聚合函数。我不知道你想要什么样的价值观,但像这样:

SELECT MIN(to_startdate), MIN(to_enddate)  
FROM tour 
WHERE to_name <> ''  AND
      to_startdate <> '0000-00-00' AND
      to_deactivated <> 1 
GROUP BY MONTH(to_startdate), YEAR(to_startdate) 
ORDER BY MIN(to_startdate)

分享错误日志,如果有的话。5.6和5.7,那是什么?MySQL版本?为什么不涉及聚合函数时按分组?@jarlh yes我正在通过select检查这一点@@version我猜唯一的“FULL\u GROUP\u BY”设置已被升级更改,但谁知道呢,只要OP拒绝发布错误消息或进一步解释查询为何不起作用..选择MINto\u startdate,MINto_enddate FROM tour WHERE to_name!=和开始日期0000-00-00'和to_停用=1 GROUP BY MONTHto_startdate,YEARto_startdate ORDER BY to_startdate结果1055-ORDER BY子句的表达式1不在GROUP BY子句中,且包含未聚合的列“jungle_search.tour.to_startdate”,该列在功能上不依赖于GROUP BY子句中的列;这与sql\u mode=only\u full\u组不兼容_by@Mandeep . . . 我把订单订好了。