ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [혼공S] 5주차_코딩은 40대 후반부터
    카테고리 없음 2024. 7. 28. 19:41

    혼자 공부하는 파이썬에 이어 혼자 공부하는 SQL에 도전하는 40대 후반의 늦게나마 코딩에 관심을 가지고 시간 날 때마다 공부하고 있는 나에게 칭찬을 보내며 혼공학습단 12기에 도전합니다. 주차별로 우수혼공족!!!이 되어 족장님께 칭찬을~!♥

     

    5주차에는 단순 보조 인덱스 및 고유 보조 인덱스를 생성하고 제거하는 방법을 알게 되었고,

    MySQL의 실행 계획(Execution Plan)에서 인덱스를 효율적으로 사용하는 방법도 확인했네요.

     

    5주차 숙제까지 다 했는데~ 마지막까지 우수혼공족 되고 싶어용!!!

    여름 방학 도서 증정 이벤트에도 꼭 참여해서 도서도 받고 싶어용~

     

    혼자 공부하는 SQL | 📖용어노트

    # 진도 기본 숙제(필수) 추가 숙제(선택)
    1주차
    (7/1 ~ 7/7)
    Chapter 01 ~ 02 p. 80의 shop_db의 회원 테이블(member)에서 아이유 회원에 대한 정보만 추출한 후 결과 화면 인증하기 데이터베이스 개체 3가지 설명하기
    2주차
    (7/8 ~ 7/14)
    Chapter 03 p. 138의 확인 문제 2번 풀고 인증하기 데이터 입력, 삭제하는 기본 형식 작성하기
    3주차
    (7/15 ~ 7/21)
    Chapter 04 p. 195의 확인 문제 4번 풀고 인증하기 p. 183 [좀 더 알아보기] 손코딩 실행하고 결과화면 인증하기
    4주차
    (7/22 ~ 7/28)
    Chapter 05 p. 226의 market_db의 회원 테이블(member) 생성하고, p. 229 데이터 입력한 후 인증하기 p. 271 확인 문제 4번 풀고 인증하기
    여름방학
    (7/29 ~ 8/4)
    🍀럭키비키 즐거운 여름방학이잔앙🍀
    5주차
    (8/5 ~ 8/11)
    Chapter 06 p. 310 인덱스 생성하고 key_name이 PRIMARY로 출력된 결과 화면 캡처하기 인덱스 생성, 제거하는 기본 형식 작성하기
    6주차
    (8/12 ~ 8/18)
    Chapter 07 ~ 08 p. 363 market_db의 고객 테이블(member)에 입력된 회원의 정보가 변경될 때 변경한 사용자, 시간, 변경 전의 데이터 등을 기록하는 트리거 작성하고 인증하기 p. 402 GUI 응용 프로그램 만들고 인증하기

     

     

     

    < 기본 숙제(필수) >

    p. 310 인덱스 생성하고 key_name이 PRIMARY로 출력된 결과 화면 캡처하기

     

    SHOW INDEX 문으로 member 설정된 인덱스를 확인하면, Key_name이 PRIMARY이므로 클러스터형 인덱스가 설정된 것을 확인할 수 있다. 이미 클러스터형 인덱스가 있으므로 더 이상 클러스터형 인덱스를 생성할 수 없다.

     

    주소(addr)에 중복을 허용하는 단순 보조 인덱스를 생성하였다.

     

    Non_unique가 1로 설정되어 있으므로 고유 보조 인덱스가 아니다. 즉, 중복된 데이터를 허용한다.

    보조 인덱스가 추가되었으므로 전체 인덱스의 크기를 다시 확인해보면, 크기가 0으로 확인되었다.

     

    생성한 인덱스를 실제로 적용시키기 위해 ANALYZE TABLE 문으로 먼저 테이블을 분석/처리합니다.

    이제 보조 인덱스가 생성된 것이 확인됩니다.

     

    회원 이름(mem_name)에 고유 보조 인덱스를 생성해보고 확인해보면, Non_unique가 0이므로 중복을 허용하지 않는

    고유 보조 인덱스가 잘 생성되었다.

     

    인덱스가 생성된 mem_name 값이 '에이핑크'인 행을 조회하고, [Execution Plan] 창을 확인해보면

    Single Row(constant)라고 되어 있는데 이 용어는 인덱스를 사용해서 결과를 얻었다는 의미이다!

     

    < 추가 숙제(선택)  >

    인덱스 생성, 제거하는 기본 형식 작성하기

     

    인덱스 생성

    CREATE [UNIQUE] INDEX 인덱스_이름

           ON 테이블_이름 (열_이름) [ASC : DESC]

     

    UNIQUE는 중복이 안되는 고유 인덱스를 만드는 것인데, 생략하면 중복이 허용된다.

    ASC 또는 DESC는 인덱스를 오름차순 또는 내림차순으로 만들어 주는데, 기본은 ASC로 만들어진다.

     

    인덱스 제거

    DROP INDEX 인덱스_이름 ON 테이블_이름

     

    주의할 점은 기본 키, 고유 키로 자동 생성된 인덱스는 DROP INDEX로 제거하지 못한다는 것이다.

    ALTER TABLE 문으로 기본 키나 고유 키를 제거하면 자동으로 생성된 인덱스도 제거할 수 있다!!!

     

Designed by Tistory.