ciao a tutti.
è possibile fare un "select * from tabella order by id desc" però escludendo già nella select i primi 8 record??
Grazie
ciao a tutti.
è possibile fare un "select * from tabella order by id desc" però escludendo già nella select i primi 8 record??
Grazie
Puoi, al limite, selezionarli tutti e poi scrivere solo quelli che vanno dal nono in poi:
codice:sql = "SELECT * FROM Tabella" set rs = conn.execute(sql) if not rs.eof then cnt = 1 do until rs.eof if cnt > 8 then response.write rs("nomeCampo") & " " end if cnt = cnt + 1 rs.moveNext loop end if rs.close set rs = nothing
ci avevo già pensato ma così mi sballa la paginazione perchè mi esclude sempre i primi 8 risultati. ho già risolto nella pagine successive alla prima (sulla base della query string) ma nella prima ho solo tre risultati (11 - 3).
non so se sono stato chiaro...
1) Crei una stringa:
PrimiOtto = "0"
2) esegui la select ordinata e scorri i primi 8 record, per ogni ciclo fai
PrimiOtto = PrimiOtto & ", " & Recordset("id")
3) Chiudi il recordset
4) Esegui questa nuova select da cui sono appunto esclusi i primi 8 record, senza problemi di paginazione:
strSql = "select * from tabella WHERE NOT(id IN (" & PrimiOtto& ")) order by id desc"
select * from tabella WHERE NOT(id IN (SELECT TOP 8 Id FROM tabella order by id desc)) order by id desc
questa funziona con sql-server. Se usi mysql usa limit invece di top (occhio che va messo alla fine invece che nella select)
altrimenti per mysql c'è questo simpatico LIMIT
SELECT * FROM tabella LIMIT 9,100
Ovvero, partendo dal nono record, prendine 100 ... che per i miei obiettivi è semplice e perfetto