Próbuję pobrać ogromny zestaw rekordów z Teradata za pomocą JDBC. I potrzebuję rozbić ten zestaw na części, dla których używam klauzuli "Top N" w select. ale nie wiem jak ustawić „Offset” jak jak to robimy w MySQL -Teradata - ograniczanie wyników przy użyciu TOP
SELECT * FROM tbl LIMIT 5,10
tak, że w przyszłym SELECT będzie pobierał mi rekordy z (n + 1) th pozycji.
dzięki. tego właśnie szukałem. – Aanand
Sugerowałbym użycie zagregowanej wersji okna 'RANK ({kolumna})' idąc dalej. RANK przedstawiony w tej odpowiedzi został uznany za przestarzały od czasu Teradata 12. 'RANK() OVER (ORDER BY custID) AS Rank_', a następnie' QUALIFY on Rank_ BETWEEN 900 AND 1000'. Jeśli dodasz klauzulę "PARTITION BY" (opcjonalnie), możesz zresetować ranking, gdy zmieni się zestaw partycjonowania kolumn. Pamiętaj, że jeśli kolumna, którą zamawiasz, nie jest unikalna, RANK nie zapewni Ci czystej sekwencji. –