2017-11-30 7 views
0

MS Excel에서 처리 할 수있는 쿼리 수가 2 백만 개를 초과하므로 Teradata를 여러 Excel 탭으로 내보내는 방법에 대한 조언이 있거나 큰 문제를 해결할 수있는 방법이 있습니다. 쿼리 결과가 올라가서 매번보다 관리하기 쉬운 청크를 끌어낼 수 있습니다.Teradata SQL - Very Large Pulls

나는 단지 풀의 특정 부분을 반환합니다 TOPSAMPLE 같은 명령이 알고,하지만 난 논리가 쿼리를 평가 한 후 반환하는 것입니다 무엇에 불분명 해요는 말 TOP 100000을 입력 한 다음 동일한/유사한 쿼리를 두 번째로 실행하고 이번에는 100001 - 200000을 반환 한 다음 200001 - 300000을 반환하는 등의 작업을 반복합니다.

팁을 주시면 감사하겠습니다. 텍스트 CSV로 내보낼 수는 있지만 Teradata가 Excel로 멋지게 플레이 할 수있는 방법을 찾으면 분명 쉽습니다. 감사!

답변

1

ROW_NUMBER()를 사용하여 결과 집합의 각 행에 "ID"값을 할당 한 다음 원하는 청크로 결과를 얻을 수 있습니다. 같은 뭔가 :

SELECT col1, col2, ... 
FROM MyTable 
QUALIFY ROW_NUMBER() OVER(ORDER BY Unique_Col) BETWEEN <Start_Number> AND <End_Number> 

그냥 그래서 TBE의 ROW_NUMBER 기능을 사용하면 쿼리를 실행할 때마다 같은 순서를 적용하여 ORDER의 고유 한 열 또는 열을 사용해야합니다.

쿼리 실행 사이에 결과 집합의 행에 변경 사항 (예 : 추가/삭제 된 행)이 있는지 여부는 고려하지 않습니다. 그게 걱정된다면 먼저 임시 테이블에 행을 복사 한 다음 임시 테이블에 대해 쿼리를 실행하십시오.

+0

정말 고마워요, 제가 찾고 있던 바로 그 것입니다! 대단히 감사합니다. :) – ender777

+0

No prob bob :). – ravioli