저는 MySQL 5.0을 사용 중이며 인덱스에 약간 새로운 기능이 있습니다. 다음 중 인덱싱을 통해 도움을받을 수있는 쿼리와 생성해야하는 인덱스는 무엇입니까?mysql : 어떤 쿼리가 어떤 인덱스를 종결시킬 수 있습니까?
이 (고유 한 값을 가지고 테이블 중 하나를 가정하지 마십시오.이는 단지 몇 가지 예 내가 시도하고 인덱싱 주위에 내 머리를 얻기 위해 만든, 숙제를하지 않습니다.) 여기
Query1:
Select a.*, b.*
From a
Left Join b on b.type=a.type;
Query2:
Select a.*, b.*
From a,b
Where a.type=b.type;
Query3:
Select a.*
From a
Where a.type in (Select b.type from b where b.brand=5);
은 내 생각이다 무엇을 인덱스는 쿼리의 서로 다른 종류의 사용 될 것이다 :
Query1:
Create Index Query1 Using Hash on b (type);
Query2:
Create Index Query2a Using Hash on a (type);
Create Index Query2b Using Hash on b (type);
Query3:
Create Index Query2a Using Hash on b (brand,type);
내가 Query1을 또는 QUERY3도이 테이블에 어떤 인덱스를 활용하는 것이 올바른 있습니까?
나는 단지 = 또는! =, 맞기 때문에 이것들이 모두 해시되어야한다고 생각합니다.
감사
와우 ... 네, mysql 문서는 조인되지 않은 열을 인덱싱하는 것에 대해 언급하지 않았습니다. 팁 고마워! – Dan
더 나은 접근 방법은 클러스터 된 인덱스를 사용하는 것입니다. 물론 항상 가능하지는 않습니다. –
클러스터 된 예 좋습니다. mysql에서 최소한 고유 한 컬럼에만있을 수있다. ms SQL 서버가 확실히 더 나은 지원을합니다. – jspcal