Index Quiz

MySQL 인덱스에 대한 지식을 테스트하고 향상시켜보세요!

문제 1 / 7

질문이 여기에 표시됩니다...

MySQL 인덱스 퀴즈 - 세트 C

총 7개 문제로 구성된 MySQL 인덱스 학습 퀴즈입니다.

문제 1. 다음과 같은 person 테이블과 name에 대한 idx_name 인덱스가 있다. ```sql CREATE TABLE person ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100) NOT NULL, department_id INT NOT NULL, INDEX idx_name (name) ); ``` 다음 쿼리는 idx_name 인덱스를 활용하는가? ```sql SELECT * FROM person WHERE name like 'A%'; ```

  • 활용한다
  • 활용하지 않는다

문제 2. 다음과 같은 person 테이블과 name에 대한 idx_name 인덱스가 있다. ```sql CREATE TABLE person ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100) NOT NULL, department_id INT NOT NULL, INDEX idx_name (name) ); ``` 다음 쿼리는 idx_name 인덱스를 활용하는가? ```sql SELECT * FROM person WHERE name like '%A'; ```

  • 활용한다
  • 활용하지 않는다

문제 3. 다음과 같은 person 테이블과 name에 대한 idx_name 인덱스가 있다. ```sql CREATE TABLE person ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100) NOT NULL, department_id INT NOT NULL, INDEX idx_name (name) ); ``` 다음 쿼리는 idx_name 인덱스를 활용하는가? ```sql SELECT * FROM person as p WHERE p.name = 'Coli'; ```

  • 활용한다
  • 활용하지 않는다

문제 4. 다음과 같은 person 테이블과 name에 대한 idx_name 인덱스가 있다. ```sql CREATE TABLE person ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100) NOT NULL, department_id INT NOT NULL, INDEX idx_name (name) ); ``` 다음 쿼리는 idx_name 인덱스를 활용하는가? ```sql SELECT * FROM person as p WHERE p.name != 'Ever'; ```

  • 활용한다
  • 활용하지 않는다

문제 5. 다음과 같은 student 테이블과 age 컬럼을 대상으로 idx_student_age 인덱스가 있다. ```sql CREATE TABLE student ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(100), age INT NOT NULL, INDEX idx_student_age(age) ); ``` 다음 쿼리는 인덱스 idx_student_age를 활용하는가? ```sql SELECT * FROM student WHERE age = '30'; ```

  • 활용한다
  • 활용하지 않는다

문제 6. 다음 employees 테이블에 ix_firstname 인덱스가 있다고 가정하자. ```sql CREATE TABLE employees ( emp_no INT NOT NULL, birth_date DATE NOT NULL, first_name VARCHAR(14) NOT NULL, last_name VARCHAR(16) NOT NULL, gender ENUM('M','F') NOT NULL, hire_date DATE NOT NULL, PRIMARY KEY (emp_no), INDEX ix_firstname (first_name) ); ``` 다음 쿼리는 인덱스 ix_firstname을 활용하는가? ```sql SELECT * FROM employees WHERE first_name BETWEEN 'Ebbe' AND 'Gad'; ```

  • 활용한다
  • 활용하지 않는다

문제 7. MySQL의 InnoDB 스토리지 엔진에서 인덱스 레인지 스캔 이후 발생할 수 있는 성능 저하의 주요 원인은 무엇인가?

  • 레인지 스캔은 항상 디스크의 연속적인 블록만 읽기 때문에 I/O 병목이 없다.
  • 레인지 스캔 후 각 레코드의 실제 데이터를 접근하기 위해 무작위(Random) 디스크 접근이 발생할 수 있다.
  • 레인지 스캔은 모든 테이블 데이터를 정렬한 후 메모리에 적재하므로 I/O가 발생하지 않는다.
  • InnoDB는 클러스터형 인덱스를 사용하지 않기 때문에 레인지 스캔은 의미가 없다.

다른 퀴즈 세트 보기