데이터베이스 의 한 필드 에서 같은 값 의 기록 방법 을 SQL 구문 으로 조회 합 니 다.

1097 단어 SQL동일 값 조회
오늘 미 션 을 받 았 습 니 다.학생 정보 표(Excel 표)가 있 습 니 다.안에 1 만 여 개의 기록 이 있 습 니 다.지금 은 이 표를 데이터베이스 에 가 져 오고 학생 학 번 을 메 인 키 로 설정 해 야 합 니 다.그러나 지금 이 표 에 있 는 학생 학 번 은 중복 되 는 기록 이 있 습 니 다.저 는 먼저 이 중복 되 는 기록 을 찾 은 다음 에 선별 한 다음 에 연구 문 제 를 통 해 해결 해 야 합 니 다.      이상 의 문 제 는 실제 적 으로 데이터베이스 시트 의 한 필드 값 이 중복 되 는 기록 을 조회 하 는 것 입 니 다.여기 서 엑셀 표를 데이터베이스 에 가 져 오 는 방법 을 생략 하고 데이터베이스 의 한 필드 에서 같은 값 의 기록 방법 만 SQL 로 조회 합 니 다.      현재 데이터베이스 테이블 이름 이 student 이 라 고 가정 하면 필드 Sno(학 번),ID(신분증)가 있 습 니 다.여기 서 두 가지 조회 방법 을 제공 합 니 다.  방법 1:학 번 과 신분증 필드 를 통 해 조회(데이터베이스 실행 효율 이 높 고 추천)

    SELECT * 
    FROM student AS A 
    WHERE (Sno IN (SELECT Sno FROM student AS B WHERE A.ID <> B.ID))
방법 2:학 번 필드 만 조회(데이터베이스 실행 효율 이 낮 고 추천 하지 않 음)

    SELECT * 
    FROM student AS A 
    WHERE (SELECT COUNT(*) FROM student WHERE Sno=A.Sno)>1
    운행 결 과 를 보면 방법 1 과 방법 2 는 같 지만 집행 효율 은 완전히 다르다.방법 1 만 여 개의 데 이 터 를 집행 하 는 데 몇 초 만 걸 리 면 되 고 방법 2 는 몇 분 이 걸 리 며 다운 현상 도 있다.다른 방법 이 있 는 지 모 르 겠 지만,고수 가 알 고 있다 면 가르쳐 주세요!!

좋은 웹페이지 즐겨찾기