84669인 학습
152542인 학습
20005인 학습
5487인 학습
7821인 학습
359900인 학습
3350인 학습
180660인 학습
48569인 학습
18603인 학습
40936인 학습
1549인 학습
1183인 학습
32909인 학습
우리 모두 알고 있듯이 innodb는 보조 인덱스에만 기본 키 값을 저장합니다. 즉, 행 레코드를 얻으려면 클러스터형 인덱스 B+ 트리를 다시 탐색해야 합니다.
추가 조회 작업을 줄이기 위해 행 포인터를 보조 인덱스에 직접 저장하면 어떨까요?
"행 포인터"가 없습니다. PRMARY KEY의 열에는 데이터의 BTree에서 행을 찾는 기능이 있습니다.
PRMARY KEY
물론 PK를 통한 조회는 "행 포인터"보다 느릴 수 있습니다. 그러나 업데이트, 삭제, 블록 분할 등은 모두 자동으로 처리됩니다. (Bill의 의견을 참조하세요.) 이렇게 하면 코드가 더 단순해집니다. 그리고 어떤 경우에는 더 빠릅니다.
더 빠르고 간단한 예: 주어진
이 예에서는 인덱싱된 BTree에 완전한 답이 있습니다. 데이터 BTree에 액세스할 필요가 없습니다. 따라서 이 색인을 이 SELECT의 "표지"라고 합니다.
SELECT
"행 포인터"가 없습니다.
PRMARY KEY
의 열에는 데이터의 BTree에서 행을 찾는 기능이 있습니다.물론 PK를 통한 조회는 "행 포인터"보다 느릴 수 있습니다. 그러나 업데이트, 삭제, 블록 분할 등은 모두 자동으로 처리됩니다. (Bill의 의견을 참조하세요.) 이렇게 하면 코드가 더 단순해집니다. 그리고 어떤 경우에는 더 빠릅니다.
더 빠르고 간단한 예: 주어진
으아악이 예에서는 인덱싱된 BTree에 완전한 답이 있습니다. 데이터 BTree에 액세스할 필요가 없습니다. 따라서 이 색인을 이
SELECT
의 "표지"라고 합니다.