본문 바로가기
Error

[Error] Only_full_group_by 에러 해결 방법!!

by GoodDayDeveloper 2022. 3. 16.
반응형

 

안녕하세요. 오늘은 Mysql에서 발생한 에러를 정리해보겠습니다.

아래와 같은 에러 발생하였습니다.

 

 

에러발생

 

Expression #1 of ORDER BY clause is not in GROUP BY clause and 
contains onaggregated column 'strbio.this_.code_order' which is not functionally dependent 
on columns in  GROUP BY clause; this is incompatible 
with sql_mode=only_full_group_by

 

 

ORDER BY 절의 표현식 #1은 GROUP BY 절에 없으며 GROUP BY 절의 열에 기능적으로 종속되지 않는 집계되지 않은 열 'strbio.this_.code_order'를 포함합니다. 이것은 sql_mode=only_full_group_by와 호환되지 않습니다.

 

 

 

이러한 현상은 Mysql 5.7 버전부터 sql_mode 항목이 생겼으며,

그 안에 only_full_group_by 가 활성화되고 있기 때문에 발생되는 에러입니다.

 

다른 블로그 보면..문제가 되는 변수(code_order)에 함수처리(ANY_VALUE())를 하던지..

쿼리를 변경한다던지 하지만 

 

저는 그냥 간단하게 문제가 되는 ONLY_FULL_GROUP_BY 를 비활성화하는 명령어로 간단히 해결하였습니다.

 

 

 

 

 

 

 

 

해결방법

 

 

Mysql 콘솔에서 관리자로 로그인하여 ONLY_FULL_GROUP_BY 를 비활성화해주는 명령어를 입력하면 해결됩니다!

 

명령어 : SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));

 

 

 

반응형

댓글