mysql报以下的错:
[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column ‘information_schema.PROFILING.SEQ’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
首先查找该sql_mode的值:
select @@sql_mode;
//也可以用一下语句
show variables like '%sql_mode%';
方法1:命令行方式修改,但只作用于该会话连接。
将查到的值,去掉only_full_group_by;对sql_mode参数进行修改命令:
set @@sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
//也可以用一下命令
SET sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
方法二
修改my.ini配置文件,在[mysqld]里设置sql_mode的值,并重启mysql(本人设置了之后,理论上重启mysql会起作用,但是反复重启mysql都没有起作用,但是关机重启后反倒起作用了)
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION