보고서 생성 응용 프로그램이 작동하지 않는다는보고를 받았습니다. 처음 조사한 후 SQL 트랜잭션이 시간 초과됨을 발견했습니다. 더 작은 항목 선택에 대한 쿼리가 결과를 반환하는 데 더 오래 걸리는 이유에 대해 나는 신비 스럽다.SQL 쿼리 기간이 더 작은 데이터 집합의 경우 더 길습니까?
빠른 쿼리 (평균 반환 사초) :
SELECT * FROM Payroll WHERE LINEDATE >= '04-17-2010'AND LINEDATE <= '04-24-2010' ORDER BY 'EMPLYEE_NUM' ASC, 'OP_CODE' ASC, 'LINEDATE' ASC
긴 쿼리 (평균 일분 반환 20초) :
SELECT * FROM Payroll WHERE LINEDATE >= '04-18-2010'AND LINEDATE <= '04-24-2010' ORDER BY 'EMPLYEE_NUM' ASC, 'OP_CODE' ASC, 'LINEDATE' ASC
나는 간단하게하는 SqlCommand에 제한 시간을 증가시킬 수있다, 쿼리가 오랜 시간이 걸린다는 사실은 변하지 않습니다.
왜 항목의 하위 집합을 요청하면 더 많은 데이터를 반환하는 쿼리보다 시간이 오래 걸릴까요? 이 쿼리를 어떻게 최적화 할 수 있습니까?
이것은 MSSQL Sharepoint 데이터베이스에서 제거됩니다. 급여 테이블은 실제로 특정 작업에 대한 청구 가능 시간을 생성하기 위해 Sharepoint 목록 및 Project Web Access에서 필드를 가져 오는 '보기'입니다. –