美文网首页
mysql 使用group_by 1055 错误 | sql_m

mysql 使用group_by 1055 错误 | sql_m

作者: 一灰丶 | 来源:发表于2018-11-22 16:15 被阅读0次

    今天在使用group_by时遇到错误,大概是以下样子:

    (cymysql.err.InternalError) (1055, "Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column 
    
    [SQL]CREATETABLE`m_part`(`f_id`INTNOTNULL,`f_name`VARCHAR(20)NULL,PRIMARYKEY(`f_id`))ENGINE=myisamDEFAULTCHARSET=utf8PARTITIONBYRANGE(f_id)(PARTITIONp0VALUESlessTHAN(10),PARTITIONp1VALUESlessTHAN(20))
    

    原因:
    mysql5.7.5版本开始,sql_mode使用的是默认值( 如上),而之前使用的mysql配置文件中sql_mode=”“,由于这个特性使在使用group_by时出现报错

    linux下解决方案:

    修改mysql.conf

    sudo vim /etc/mysql/mysql.conf.d/mysql.conf
    

    然后将
    sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
    添加至文件末尾

    重启服务:
    /etc/init.d/mysql restart

    问题解决

    相关文章

      网友评论

          本文标题:mysql 使用group_by 1055 错误 | sql_m

          本文链接:https://www.haomeiwen.com/subject/gzmlqqtx.html