테이블에 N 개의 열이있는 경우 가능한 모든 열 조합은 2 ^ N-1입니다 (빈 세트 제거). 1023 개의 인덱스를 의미하는 10 개의 열의 경우 20 개의 열의 경우 1048575 개의 인덱스가 만들어집니다. 대부분의 인덱스는 사용되지 않지만 옵티마이 저가 고려해야합니다. 옵티마이 저가 더 나은 인덱스 대신 차선책 인덱스를 선택할 수 있습니다. 실제로 어떤 인덱스가 유용한 지 알아 내려고 노력하는 대신 모든 종류의 인덱스를 생성하는 길을 택하지는 않을 것입니다.
수정 가능한 색인 수 수정
Jeff가 지적한 것처럼 (3,2,1)은 (1,2,3)과 분명히 다르기 때문에 2 ^ N (전력 설정)보다 훨씬 나쁩니다. N 열의 경우 N 열의 모든 열을 포함하는 인덱스의 첫 번째 위치를 선택할 수 있습니다. N-1 방식 등의 두 번째 위치에 대해 우리는 N으로 끝납니다! 전체 크기의 다른 인덱스. 이 인덱스의 다른 인덱스는이 세트의 다른 인덱스에 포함되지 않습니다. 또한 더 짧은 색인을 추가하여 전체 색인에 포함되지 않습니다. 따라서 인덱스 수는 N!입니다. 그러므로 10 개의 열에 대한 예는 10이됩니다! = 3628800 인덱스 및 20 (드럼 롤) 2432902008176640000 인덱스. 이것은 엄청나게 큰 숫자입니다. 각 색인에 대해 1mm의 부품을 1 점씩 넣으면 모든 점을 통과하는 데 94 일이 걸립니다. 모두와 dont ;-)