데이터베이스가 약 50.000 개입니다. (C#을 + SQLSERVER 사용) 저장 프로 시저 (그냥 한 부분이다) 나는이 쿼리를 가지고 있다고 가정 해 봅시다 :SQL Server에서 왼쪽에 인덱스를 입력하십시오.
SELECT ....
FROM
Table1 t1
LEFT JOIN Table2 t2 ON t1.ID=t2.ID
LEFT JOIN Table3 t3 ON t2.ColumnName=t3.ColumnName
WHERE
ISNULL(t1.ColumnName,'') LIKE @arg1 //FAST
ISNULL(t2.ColumnName2,'') LIKE @arg2//SLOW
ISNULL(t3.ColumnName,'') LIKE @arg3 //SLOW
을 내가 t3.Column2 후 쿼리가 느린 검색합니다. t1 컬럼을 살펴보면, 매력처럼 빠르게 작동합니다. 문제가 무엇입니까? 어떻게 속도를 높일 수 있습니까? 조인을 사용하지 않으려했지만 시도가 불가능합니다. 테이블에 인덱스를 추가 할 수 있습니까? 이 특별한 경우에 어떤 것이 있습니까?
편집 된 질문에 따라 업데이트? t1.ColumnName 또는 t3.ColumnName2에 대한 색인이 있습니까? – JamieA
텍스트 상자 - 검색 매개 변수의 값, 사람의 이름을 말하게합니다. – michael24B
예, 색인은 t1.Id (클러스터 됨)입니다. 자동으로 생성 된 것 같습니다. – michael24B