주로 데이터베이스 쿼리에서 반환된 결과가 너무 많을 때 발생한다.

1. 잘못된 조건: 데이터베이스 쿼리에 잘못된 조건이 포함되어 있어서 예상보다 많은 결과를 반환하는 경우
- ex) 1개의 데이터가 반환되어야 하지만 내가 짠 쿼리의 조건으로는 2개의 데이터가 반환될 때

2. 중복된 데이터: 쿼리 결과에 중복된 데이터가 포함되어 있어서 예상보다 많은 결과가 반환되는 경우
- 이 경우 데이터 중복을 방지하거나 적절한 DISTINCT나 GROUP BY 절을 사용하여 해결할 수 있다.

3. 조인 문제: 쿼리에 잘못된 조인이 포함되어 있어서 결과가 예상치 못하게 확장되는 경우
- 각 조인이 맞는 방향으로 걸려있는지 확인한다.

'DB' 카테고리의 다른 글

[Dbeaver] MariaDB 드라이버 설치불가  (0) 2024.05.26
MSSQL MERGE INTO문 (mybatis ver)  (0) 2024.05.26

[에러상황] MariaDB 연결중 MariaDB 드라이버 다운로드 불가.

 

[에러코드] Network error

이유: Network unavailable due to a certificate issue. Try changing the setting Use Windows trust store in Preferences->Connections and restart DBeaver. It might help if you haven't overridden the trust store. javax.net.ssl.SSLHandshakeException:PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

 

[조치법] 상단 [윈도우]메뉴 - 설정 - 연결 -> Use Windows trust store 해제

'DB' 카테고리의 다른 글

TooManyResultException 에러 해결  (0) 2024.05.28
MSSQL MERGE INTO문 (mybatis ver)  (0) 2024.05.26

[USING ON 조건] 일치여부에따라 INSERT 또는 UPDATE, DELETE도 가능한 문법이다.

DELETE는 사용해보지 않았지만 비슷할것같다.

 

현재 진행중인 프로젝트에서 사용할 일이 생겨

상황별 UPDATE, INSERT 정상 적용되는것 확인후 작성

 

=============================

SQL

=============================

MERGE INTO [테이블명] AS a
USING (SELECT 1 AS dual) AS b 
      ON (a.SEQ = #{seq})
 WHEN MATCHED THEN
 UPDATE
        SET  CONTENT = #{content}

 WHEN NOT MATCHED THEN
 INSERT(TITLE

             ,  CONTENT

             ,  CREATE_AT)
 VALUES( #{title}

              ,  #{content}

              ,  #{createAt});

=============================

설명

=============================

[테이블명] -> UPDATE또는 INSERT할 테이블

[ USING (SELECT 1 AS dual) AS b ] -> 추가테이블 사용 안할거기때문에 잡아놓은 더미테이블

[ ON (a.SEQ = #{seq}) ] -> 조건식

[ WHEN MATCHED THEN ] -> 조건식이 참일때. 라는 뜻

[ WHEN NOT MATCHED THEN ] -> 조건식이 거짓일때. 라는 뜻

*위 쿼리를 보면 알겠지만 UPDATE, INSERT문에는 테이블명을 따로 기입하지 않고 MERGE INTO 옆에만 한번 작성한다.

=============================

'DB' 카테고리의 다른 글

TooManyResultException 에러 해결  (0) 2024.05.28
[Dbeaver] MariaDB 드라이버 설치불가  (0) 2024.05.26

+ Recent posts