Ho una query in SQL Server 2012 che dovrebbe recuperare un numero di record in base alla dimensione della pagina specificata e alla pagina in cui si trova. Sembra che:Scollegamento Recupera Avanti per ottenere tutte le righe
SELECT LocID, LocName
FROM Locations
ORDER BY LocName OFFSET @PageNum ROWS
FETCH NEXT @PageSize ROWS ONLY
Il codice è piuttosto semplice. Quello che devo fare, però, è metterlo in una funzione per restituire correttamente il paging. Tuttavia, potrei anche aver bisogno di tutti i record indietro da questa funzione, quindi ho bisogno di avere l'opzione di chiamare la funzione senza OFFSET o FETCH (principalmente, questo è per un report che non ha paginazione e dovrebbe essere solo i dati dritti) . Non riesco a pensare a un buon modo per farlo.
Perché non basta chiamarlo con un '@ PageSize' abbastanza grande da restituire tutti i record? –
Il problema è che non so quanto sarà grande il set di record fino a dopo averlo eseguito. Ho avuto un'altra domanda su qualcosa di simile a quel problema. – CrystalBlue
Il limite superiore di INT o BIGINT dovrebbe essere sufficiente, a seconda ... –