로컬호스트에서 콘텐츠 모듈 진입시 아래 에러 발생합니다.
SQLSTATE[42000]: Syntax error or access violation: 1055 Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'rx.contents.module_srl' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
제목 | 날짜 | |
---|---|---|
본 게시판의 용도 | 2024/06/11 | |
154 | [XE] XE 태그 연관글 출력 위젯은 없나요? | 2022/01/02 |
153 | [XE] XE게시판 리스트 1차 카테고리 선택시 2차 카테고리 출력 | 2022/01/02 |
152 | [XE] 윤삼님의 게시판 확장변수 다중검색 애드온 혹시 라이믹스 2.0.17에서 동작하나요? [6] | 2022/01/01 |
151 | [git] git의 .gitignore 사용방법 문의 | 2021/12/27 |
150 | [PHP] try {} catch() {} 가 무엇인가요? [1] | 2021/12/27 |
149 | [XE] 질문게시판에서 해결/미해결 기능을 뱃지 달고 싶은데 | 2021/12/26 |
148 | [XE] 일괄비밀글 처리 [1] | 2021/12/26 |
147 | [XE] project mid 사용불가능.. | 2021/12/25 |
146 | [XE] 작성자 자동 변경 애드온 | 2021/12/15 |
145 | [XE] rhymix.2.0.14에서 게시판 분류 편집이 안되는 경우 있으시던가요/XE분류등록이안됩니다/xe 게시판 카테고리 안보임/ [1] | 2021/09/12 |
144 | [XE] 스팸글 등록시 한꺼번에 삭제하는 방법 [1] | 2021/09/06 |
143 | [XE] 애드온 관리자인 경우에만 [1] | 2021/09/04 |
this is incompatible with sql_mode=only_full_group_by로 검색하시면 해결 방법 나오실거에요
이 오류는 MySQL에서 GROUP BY 구문을 사용할 때 발생하는 것으로, MySQL의 `only_full_group_by` SQL 모드 때문입니다.
`only_full_group_by` 모드는 SQL 표준에 따라 GROUP BY 절에 명시되지 않은 컬럼을 SELECT 리스트에서 반환하려고 시도하면 오류를 발생시킵니다. 즉, GROUP BY 절에 없는 모든 컬럼은 집계 함수 내에서 사용되거나, GROUP BY 절에 포함되어야 합니다.
따라서 이 오류를 해결하기 위해서는 다음 두 가지 방법 중 하나를 선택할 수 있습니다:
1. **SQL 쿼리 수정:** SELECT 리스트에서 GROUP BY 절에 명시되지 않은 컬럼('rx.contents.module_srl')을 제거하거나, 해당 컬럼을 집계 함수 내에서 사용하거나, GROUP BY 절에 추가하면 됩니다.
예를 들어, 기존에 아래와 같은 쿼리가 있었다면:
```sql
SELECT column1, rx.contents.module_srl
FROM your_table
GROUP BY column1;
```
아래와 같이 수정할 수 있습니다:
```sql
SELECT column1, MAX(rx.contents.module_srl)
FROM your_table
GROUP BY column1;
```
2. **SQL 모드 변경:** `only_full_group_by` SQL 모드를 비활성화하면 됩니다. 이 경우, SQL 모드를 변경하려면 다음과 같은 명령어를 사용할 수 있습니다:
```sql
SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
```
이 명령은 전역 SQL 모드에서 `only_full_group_by`를 제거합니다. 그러나 이 방법은 임시적인 해결책일 수 있으며, 일부 쿼리의 예상치 못한 결과를 초래할 수 있습니다. 일반적으로는 쿼리를 수정하여 SQL 표준을 준수하는 것이 좋습니다.