>백엔드 개발 >PHP 튜토리얼 >Laravel WhereIn 및 GroupBy: '구문 오류 또는 액세스 위반: 1055'를 수정하는 방법은 무엇입니까?

Laravel WhereIn 및 GroupBy: '구문 오류 또는 액세스 위반: 1055'를 수정하는 방법은 무엇입니까?

DDD
DDD원래의
2024-12-20 11:00:11293검색

Laravel WhereIn and GroupBy: How to Fix

Laravel: WhereIn과 GroupBy를 사용할 때 "구문 오류 또는 액세스 위반: 1055 오류" 해결

Laravel에서는 WhereIn과 GroupBy를 결합하려고 할 때 일반적인 문제가 발생합니다. 단일 쿼리의 GroupBy 메서드로 인해 "구문 오류 또는 액세스 위반: 1055"가 발생합니다. 오류.

이 오류를 해결하려면 다음 옵션을 고려하십시오.

엄격 모드 비활성화

config/database.php 파일에서 MySQL 연결 구성 배열을 찾으세요. 다음 줄을 추가하세요.

'mysql' => [
    ...
    'strict' => false,
    ...
]

strict를 false로 설정하면 모든 strict 옵션이 비활성화되어 오류 없이 쿼리를 실행할 수 있습니다.

특정 Strict 모드 활성화

또는 일반 엄격 모드를 활성화한 상태로 유지하면서 특정 엄격 모드를 선택적으로 활성화할 수도 있습니다. 다음 줄을 추가합니다.

'mysql' => [
    ...
    'strict' => true,
    'modes' => [
        // 'ONLY_FULL_GROUP_BY', // Disable this to allow grouping by one column
        'STRICT_TRANS_TABLES',
        'NO_ZERO_IN_DATE',
        'NO_ZERO_DATE',
        'ERROR_FOR_DIVISION_BY_ZERO',
        'NO_AUTO_CREATE_USER',
        'NO_ENGINE_SUBSTITUTION'
    ],
    ...
]

이 경우 ONLY_FULL_GROUP_BY 모드가 비활성화되어 다른 엄격한 모드는 활성화된 상태로 유지하면서 단일 열로 그룹화할 수 있습니다.

이러한 솔루션을 구현하면 "구문 오류 또는 액세스 위반: 1055" 오류를 해결하고 WhereIn과 GroupBy를 결합한 쿼리를 성공적으로 실행할 수 있습니다.

위 내용은 Laravel WhereIn 및 GroupBy: '구문 오류 또는 액세스 위반: 1055'를 수정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.