>  기사  >  데이터 베이스  >  MYSQL SQL 문 최적화에 대한 자세한 설명

MYSQL SQL 문 최적화에 대한 자세한 설명

黄舟
黄舟원래의
2017-02-28 13:12:001652검색

SQL에는 여러 가지 최적화 기법이 있습니다. 동일한 기능을 수행할 수 있는 두 SQL 문이 쿼리 성능이 서로 다른 경우가 있으므로 효율적인 SQL 코드를 마스터해야 합니다.

1. 쿼리 최적화

1. 레코드 세트의 행 수를 줄이고 *

2. in 대신 기존을 사용합니다. 예를 들어 다음과 같이 sno from stu where presents(select * from grand where sno=stu.sno)

3. > 대신 >=를 사용하고 같음을 추가한 다음 비교하여 최소값 또는 최대값을 직접 잠급니다. >만 쓰면 데이터베이스가 행별로 비교합니다.

4. 인덱스를 사용하되 인덱스에 대한 계산을 수행하지 마세요. or가 발생하면 인덱스가 실패합니다

5 . 한 개의 데이터만 쿼리할 때는 제한 1을 사용하세요. 이렇게 하면 데이터를 찾은 후에도 검색이 계속됩니다.

6. 데이터를 쿼리할 때는 rand()를 사용하지 마세요. 먼저 임의의 숫자를 생성할 수 있습니다:

                   select userName from user limit $rand,1;

7. 쿼리 조인은 큰 결과 집합을 구동하기 위해 작은 결과 집합을 사용해야 합니다.

8. 최대한 적은 수의 하위 쿼리를 사용하는 것이 가능합니다. 하위 쿼리 프로세스에서는 먼저 내부 쿼리에 임시 테이블을 생성하고 쿼리가 완료된 후 임시 테이블을 삭제합니다.

2. 데이터베이스 구축 관점에서 데이터베이스 최적화 전략을 분석

1. 데이터베이스 구조를 최적화하고, 데이터베이스 필드가 많은 테이블을 여러 테이블로 수평 분할

2. 데이터를 삽입하기 전에 인덱스를 비활성화한 다음 활성화합니다:

 ALTER TABLE table_name DISABLE KEYS ;
                  ALTER TABLE table_name ENABLE KEYS ;

3. 일괄 삽입 문 사용: LOAD DATA를 사용할 수 있는 경우 INFILE문을 사용해 볼 수 없다면

ALTER TABLE table_name ENABLE KEYS ;

를 선택하면 된다. sql문 최적화 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!



성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.