> 데이터 베이스 > MySQL 튜토리얼 > MySQL에서 'GROUP BY에 없습니다' 오류가 발생하는 이유는 무엇이며 어떻게 해결할 수 있습니까?

MySQL에서 'GROUP BY에 없습니다' 오류가 발생하는 이유는 무엇이며 어떻게 해결할 수 있습니까?

Mary-Kate Olsen
풀어 주다: 2024-12-21 02:42:10
원래의
612명이 탐색했습니다.

Why Does MySQL Throw an

MySQL 오류: 'GROUP BY에 없습니다'

MySQL은 검색할 때 종종 "GROUP BY에 없습니다" 오류를 생성합니다. 특정 쿼리를 사용하여 테이블의 데이터. 원인과 해결 방법을 이해하는 것이 중요합니다.

배경:

MySQL에서는 COUNT와 같은 집계 함수를 제외하고 SELECT 절에 포함된 모든 열도 GROUP BY 절에 포함됩니다. 이렇게 하면 결과가 지정된 열에 고유한 값이 있는 데이터 그룹을 기반으로 합니다.

예제 오류:

제공된 예에서 다음을 사용할 때 오류가 발생합니다. 쿼리:

SELECT `name`, `type`, `language`, `code` 
FROM `users` 
WHERE `verified` = '1' 
GROUP BY `name` 
ORDER BY `count` DESC LIMIT 0, 25
로그인 후 복사

MySQL은 GROUP BY에 열 개수가 없음을 감지합니다. 절.

해결 방법:

이 오류를 해결하려면 GROUP BY 절의 SELECT 절에 있는 모든 열을 포함해야 합니다. 이 경우 수정된 쿼리는 다음과 같습니다.

SELECT `name`, `type`, `language`, `code` 
FROM `users` 
WHERE `verified` = '1' 
GROUP BY `name`, `type`, `language`, `code` 
ORDER BY `count` DESC LIMIT 0, 25
로그인 후 복사

추가 참고 사항:

  • MySQL의 기본 동작은 부분적인 GROUP BY를 허용하는 것입니다. 비결정적 결과로.
  • 전체 GROUP BY를 적용하려면 다음을 설정하세요. @@sql_mode='ONLY_FULL_GROUP_BY'.

위 내용은 MySQL에서 'GROUP BY에 없습니다' 오류가 발생하는 이유는 무엇이며 어떻게 해결할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿