2014-05-23 2 views
0

아래와 같이 삽입 쿼리 최적화를 다시 작성하는 데 도움을주십시오. 내 stored procedure 내가 교체로 stored procedure 실행 빠르게 확인하고 싶어 여기에 삽입 쿼리의 무리의 이러한 유형이 포함더 빠른 실행을 위해이 삽입 쿼리에 대한 최적화 팁을 알려주십시오.

INSERT INTO [allassetsurveyreport] 
SELECT Replace(srno, 'string;#', '') AS SRNO, 
     'Yes'       AS Responded, 
     'Yes'       AS IsOldReport, 
     NULL       AS [Status], 
     [pleaserateyour_x00]   AS [Overall Satisfaction], 
     [easeofuse]     AS [Ease of Engaging], 
     responsiveness    AS Professionalism, 
     [qualityofthedeliverable]  AS [Quality of Document], 
     NULL       AS BulkUploadReason, 
     NULL       AS [Requested FY], 
     NULL       AS [Requested FM], 
     NULL       AS Vertical, 
     NULL       AS Industry, 
     NULL       AS PrimaryContact, 
     NULL       AS [Topic for Proposal] 
FROM [rfx_survey] 
+0

어느 데이터베이스입니까? 테이블에있는 인덱스는 무엇입니까? – DaImTo

+2

'rfx_survey'는 뷰가 아니라 테이블이라고 가정하면'insert'는 꽤 빨라야합니다. 유일하게 빠른 것은 일괄 삽입이지만, 설정하는 오버 헤드로 인해 실제로 느려질 수 있습니다. –

+0

모든 레코드에 대해이 저장 프로 시저를 호출하는 경우 삽입을 직접 수행하는 것이 좋습니다. –

답변

0

이 데이터를 삽입되는 테이블의 모든 열에 대한 기본값이있는 경우 내 대답에만 작동 NULL 또는 'Yes'라고 표시되고 다른 모든 값은 두 번째 테이블에서 직접 가져옵니다.

은 그럼 당신은 사용할 수 있습니다

INSERT INTO [allassetsurveyreport] 
    ([Overall Satisfaction], 
     [Ease of Engaging], 
     Professionalism, 
     [Quality of Document]) 
SELECT [pleaserateyour_x00]   AS [Overall Satisfaction], 
     [easeofuse]     AS [Ease of Engaging], 
     responsiveness    AS Professionalism, 
     [qualityofthedeliverable]  AS [Quality of Document] 
FROM [rfx_survey] 

난 당신이 올바른 순서로 열을 선택하면 AS가 필요한 경우 확실하지 않다.

+0

열을 명시 적으로 나열하는 것은 실제로 좋은 아이디어입니다. 그러나 쿼리의 성능에는 영향을 미치지 않습니다. –

관련 문제