Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL의 단일 테이블에서 많은 SELECT를 최적화하는 방법은 무엇입니까?

<시간/>

많은 SELECT를 최적화하려면 한 번 사용하고 IN()을 적용하여 여러 값을 가져옵니다. 먼저 테이블을 생성하겠습니다 -

mysql> create table DemoTable
(
   Id int,
   Name varchar(100),
   Age int
);
Query OK, 0 rows affected (0.77 sec)

삽입 명령을 사용하여 테이블에 일부 레코드 삽입 -

mysql> insert into DemoTable values(1,'Chris',23);
Query OK, 1 row affected (0.39 sec)
mysql> insert into DemoTable values(2,'David',21);
Query OK, 1 row affected (0.56 sec)
mysql> insert into DemoTable values(3,'Mike',24);
Query OK, 1 row affected (0.28 sec)
mysql> insert into DemoTable values(4,'Robert',22);
Query OK, 1 row affected (0.12 sec)

select 문을 사용하여 테이블의 모든 레코드 표시 -

mysql> select *from DemoTable ;

이것은 다음과 같은 출력을 생성합니다 -

+------+--------+------+
| Id   | Name   | Age  |
+------+--------+------+
|    1 | Chris  |   23 |
|    2 | David  |   21 |
|    3 | Mike   |   24 |
|    4 | Robert |   22 |
+------+--------+------+
4 rows in set (0.00 sec)

다음은 단일 테이블에서 많은 SELECT를 최적화하는 쿼리입니다 -

mysql> select Name from DemoTable where Age in(21,22,23);

이것은 다음과 같은 출력을 생성합니다 -

+--------+
| Name   |
+--------+
| Chris  |
| David  |
| Robert |
+--------+
3 rows in set (0.00 sec)