DECLARE @TT table ( ProductID int, CategoryGroupID int, CategoryGroupName varchar(10) ) -- INSERISCO I DATI ................ -- seleziono solo i record con NUMERO DI RIGA fra 6 e 10 SELECT ProductID, CategoryGroupID FROM ( SELECT tbl.*, ROW_NUMBER() OVER (ORDER BY ProductID) rownum FROM @TT as tbl ) seq WHERE seq.rownum BETWEEN 6 AND 10
SELECT ProductID, CategoryGroupID -- così seleziono solo il campi che mi servono (i tuoi a,b,c,d per intenderci) FROM ( -- qui faccio una select completa sulla tabella ordinandoli per la sua primary key ed aggiungo un intero che indica il numero di riga (è un numero progressivo diverso quindi dall'ID). E' un'informazione che normalmente non hai ed useremo nella Where SELECT tbl.*, ROW_NUMBER() OVER (ORDER BY ProductID) rownum FROM @TT as tbl ) seq WHERE seq.rownum BETWEEN 6 AND 10 -- qui non faccio altro che selezionare il range che mi serve
SELECT ProductID, CategoryGroupID -- così seleziono solo il campi che mi servono (i tuoi a,b,c,d per intenderci)
innanzi tutto grazie a entrambi @makbox purtroppo questa via non è attuabile visto che dovrei ripetere l'operazione ad ogni refresh di pagina in pratica ho tante pagine create dinamicamente in base al numero di elementi da stampare per pagine e quelli presenti nel db e in base alla pagina che seleziono (1-2-3-4-5-...-100) devo prendere le relative righe dal db quindi caricare ogni volta 20000 record in un array è pesante purtroppo ci sono pagine che avranno 10 elementi (2 pagine) e altri che magari ne avranno 100 o più e non posso prevedere il numero @mizrael sono alquanto nabbo riguardo a sql che uso in maniera molto limitata mi spiegheresti in breve come funziona quello che hai scritto? non è possibile usare solamente WHERE seq.rownum BETWEEN 6 AND 10 in una normale select? so che è poco corretto ma io scrivo il codice sql direttamente nella pagina web (o al più nella classe .cs) e non so se può creare errori o meno. purtroppo sono costretto a fare così perchè nel momento in cui devo spostare il sito in un server con access (per esempio) avere i comandi sql direttamente nel sito e non su sql server mi è più comodo per il trasferimentoModificato da doppiomango il 03 settembre 2010 09.45 -
Torna al forum | Feed RSS