Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Instance
- IoC
- 객체지향 프로그래밍
- Dependency Injection
- DI
- social login
- 소셜로그인
- 쓰레드
- jwt
- 오브젝트
- 객체
- 회고록
- 항해99장점
- 항해99단점
- inversion of control
- 인스턴스
- 소셜
- 클래스
- 인스턴스화
- jvm
- process
- 부트캠프추천
- Thread
- class
- 스레드
- object
- API
- 프로세스
- bean
- 항해99솔직후기
Archives
- Today
- Total
로운's 기술노트
Error_Note 본문
SQL의 Error코드는 총 9자리 숫자 및 간단한 설명으로 구성되어 있다.
숫자는 각각 4자리 + 5자리로 구성되는데, 처음 4자리는 오류의 유형을. 다음 5자리는 특정 오류를 식별하는 고유 식별자이다. (e.g SQL Error [1055] [42000] )
Error Messege는 두려워할 대상이 아니라
바른 쿼리를 작성하기 위한 지침서 정도로 해석하는 것이 정신건강에 좋다.
SQL Error [1052] [23000]
그룹화된 해당 컬럼의 참조 값이 없을 경우 발생. 그룹화된 참조 값을 넣어주면 해결된다.
e.g) SQL Error [1052] [23000]: Column 'game_account_id' in group statement is ambiguous
SQL Error [1054] [42S22]
쿼리에서 해당 컬럼('u.game_account_id')을 찾을 수 없을 때, 즉 해당 테이블 'u'에 존재하지 않거나 오타가 있는 경우에 발생할 수 있다.
해결 방법은 해당 열을 정확하게 참조하거나, 테이블에 해당 열이 있는지 다시 확인해야 한다.
e.g) SQL Error [1054] [42S22]: Unknown column 'u.game_account_id' in 'field list'
SQL Error [1055] [42000]
Select문에 집계함수가 있을 경우, 모든 컬럼(집계합수 제외)이 Group By절에 추가되어야 한다.
e.g) SQL Error [1055] [42000]: Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'basic.p.approved_at' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
SQL Error [1056] [42000]
해당 컬럼('actorcnt')을 그룹화할 수 없다는 것을 나타내며, GROUP BY 절에 추가하여 간단히 해결가능!
e.g) SQL Error [1056] [42000]: Can't group on 'actorcnt'
SQL Error [1060] [42S21]
서브쿼리와 메인 쿼리에서 모두 해당 컬럼(serverno)을 선택하고 있어서 발생하며,
해결 방법은 서브쿼리에서 해당 컬럼을 빼면 끝!
e.g) SQL Error [1060] [42S21]: Duplicate column name 'serverno'
SQL Error [1111] [HY000]
일반적으로 그룹 함수의 잘못된 사용을 나타내며, 집계 함수는 WHERE 절이나 HAVING 절에서는 사용할 수 없다.
e.g) SQL Error [1111] [HY000]: Invalid use of group function
SQL Error [1140] [42000]
- GROUP BY 없이 집계된 쿼리에서 SELECT 내에 그룹화되지 않은 열이 있다는 것을 나타 냄.
- 해결방법 1. GROUP BY 문을 추가하여 모든 선택한 열을 그룹화
2. SQL 모드를 변경하여 only_full_group_by를 비활성화
(데이터 무결성 및 쿼리의 의도를 모호하게 할 수 있으므로 권장하지 않음)
e.g) SQL Error [1140] [42000]: In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated column 'basic.u.logid'; this is incompatible with sql_mode=only_full_group_by
SQL Error [1248] [42000]
'서브쿼리' 또는 '임시 테이블'에 별칭을 지정하지 않았을 때 발생하며, 모든 파생 테이블에 별칭을 지정하면 해결!
e.g) SQL Error [1248] [42000]: Every derived table must have its own alias
SQL Error [1582] [42000]
- DATEDIFF 함수의 잘못된 사용으로 발생한다 (날짜형식 'YYYY-MM-DD', 매개변수의 수 등).
- 용법 : DATEDIFF(시작 날짜, 종료 날짜)
e.g) SQL Error [1582] [42000]: Incorrect parameter count in the call to native function 'DATEDIFF'
'내배캠_데이터분석가_'24.04~08 > SQL' 카테고리의 다른 글
[강의] SQLD_ 데이터 모델링의 이해 (0) | 2024.05.19 |
---|---|
[프로그래머스] 입양 시각 구하기(2) (COALESCE) (2) | 2024.04.29 |
[문법] WITH, WITH RECURSIVE 구문 (0) | 2024.04.24 |
[문법] DATE_FORMAT() 함수 (0) | 2024.04.24 |
[프로그래머스] 조건에 부합하는 중고거래 댓글 조회하기 (0) | 2024.04.23 |
Comments