특정 쿼리의 결과 내에서 각 항목이 몇 번이나 나왔는지 추적하도록 요청 받았습니다. 내 생각은 쿼리 결과를 추적 테이블에 저장 한 다음 결과를 호출자에게 다시 보냅니다. 결과 집합에 최대 1000 개의 레코드가 포함될 수 있기 때문에 이러한 결과를 저장하는 가장 효율적인 방법이 무엇인지 궁금합니다.SQL Server - 효율적인 쿼리 결과를 추적 테이블에 저장
내 계획은 쿼리 결과를 임시 테이블로 가져 와서 그 결과를 추적 테이블에 삽입 한 다음 SPROC의 결과로 임시 테이블을 반환하는 것입니다. 이런 식으로 뭔가 :
DECLARE @QueryTime datetime
SET @QueryTime = GETDATE()
DECLARE @Results TABLE (X nvarchar(255), Y nvarchar(255))
INSERT INTO @Results
SELECT X,Y FROM TableA
INSERT INTO TableB
SELECT X, @QueryTime FROM @Results
SELECT X, Y FROM @Results
사람이 추적 테이블에 설정 벌크 결과를 게시 할 수있는보다 효율적인 방법이 있습니까?
감사합니다. 때때로 물건을 다듬는 것만으로도 충분합니다. 왜 내가 쿼리를 두 번 실행하는 것에 반대했는지 확신 할 수 없습니다. –