• 카테고리

    질문 & 답변
  • 세부 분야

    데이터베이스

  • 해결 여부

    미해결

수업과 동일한 SQL 쿼리시 중복으로 값이 나오는 이유

23.09.03 16:41 작성 23.09.03 16:42 수정 조회수 356

0

안녕하세요, 강사님

수업을 들은 후에 DBeaver로 쿼리를 따라해보면서 복습을 하고 있습니다. 그런데 이상하게도 강사님과 동일한 쿼리를 입력하여도 저는 중복으로 값이 나오는 현상이 때때로 있습니다.

예를 들어 아래의 between 문법의 경우, 행의 갯수는 총 12개가 되어야 맞는데 저는 중복이 되어서 24개가 되네요.

select a.*, b.grade as salgrade, b.losal, b.hisal 
from hr.emp a join hr.salgrade b on a.sal 
between b.losal and b.hisal;

처음엔 제가 쿼리를 잘못 입력한줄 알았는데, 동일한 쿼리인데도 이런 경우가 가끔 발생하더라구요.

앞에 제가 연습하면서 수행했던 쿼리의 캐시값이 남아서 이렇게 되는 것일까요? 원인을 알아서 해결하고 싶습니다 ㅠㅠsql_1.pngsql_1.1.png

 

 

 

 

답변 2

·

답변을 작성해보세요.

0

Hannah Uh님의 프로필

Hannah Uh

질문자

2023.09.04

말씀 듣고 hr, nw 스키마를 지우고 다시 restore 했더니 정상적으로 보이고 있습니다. restore start 버튼을 두번 누르면 데이터가 중복으로 들어가는 걸까요?;;;

강의를 듣다가 혹시 동일 현상이 발생하면 그떄 문의드리겠습니다. 감사합니다!

0

안녕하십니까,

SQL 수행 결과가 수행할 때 마다 달라지지는 않을것 같습니다. ^^

원인은 저도 잘 모르겠지만, 일단,

  1. EMP 테이블과 SALGRADE 데이터가 강의 실습 데이터 건수와 동일한지 확인 부탁드립니다. 원래 강의 실습 데이터 건수를 모르시면 데이터 건수를 여기에 올려 주십시요.

  2. DBeaver를 종료 시키시고, 강의 실습 코드를 다시 복사해서 수행 부탁드립니다.

 

여전히 문제면 다시 글 부탁드립니다.