> 
> Wie bei google :-) 
> 10'000'000 Seiten gefunden, aber versuch mal per URL �nderung auf die
> Seite 554210 oder so zu springen, kann nur die ersten 1000 Eintr�ge
> anzeigen...

Genau... Google geht diese 10'000'000 Seiten auch nicht intern durch, um
sie zu z�hlen, sondern hat Sch�tzfunktionen daf�r(schonmal 7 pages bei
google angezeigt bekommen und dann war doch nach 6 schluss?)

Ansonsten: so etwa kann man limit nachbauen, aber �ber performance kann
ich nichts aussagen...

select top 5 * from tabelle where id in
(select top 10 id from tabelle) order by id desc

Der trick ist einmal aufsteigend und dann absteigend zu sortieren...
Da die sortierspalte(n) eindeutig sein m�ssen, damit top wie gew�nscht
funktioniert, muss man beim umdrehen ein wenig vorsichtig sein(alle
spalten beachten!)...

Claudius

> 
> -----Urspr�ngliche Nachricht-----
> Von: Claudius Ceteras [mailto:[EMAIL PROTECTED]] 
> Gesendet: Donnerstag, 23. Mai 2002 21:21
> An: ASP Datenbankprogrammierung
> Betreff: [aspdedatabase] RE: AW: RE: sql - limit MSsqlserver2000
> 
> Mit nem serverside cursor ist es nicht so schlimm....
> Und wenn Du wirklich in einem 100.000er RS browsen willst, hast Du ein
> anderes Problem...
> Es ist glaub ich keine grosse Beschneidung der M�glichkeiten, wenn man
> um solche Anfragen zu verhindern immer top 1000 o.�. Nutzt, den bei so
> vielen pages wird sowieso keiner alle browsen, sondern 
> entweder nur die
> ersten anschauen, oder die anfrage weiter einschr�nken...
> 
> Claudius
> 
> > 
> > Nun sowas kommt bei einem Table mit 100.000 records 
> > sicherlich gut. :-(
> > 
> > Gruss
> > 
> > Roman Pittroff
> > Consulting
> > Bangkok, Thailand
> > 
> > 
> > >-----Original Message-----
> > >From: Severin Ulrich [mailto:[EMAIL PROTECTED]] 
> > >Sent: Friday, May 24, 2002 2:09 AM
> > >To: ASP Datenbankprogrammierung
> > >Subject: [aspdedatabase] AW: RE: sql - limit MSsqlserver2000
> > >
> > >
> > >Kannst du das nicht mit den PageCount PageSize Propertys des 
> > >RecordSets machen?
> > >
> > >http://www.chilisoft.com/caspdoc/36_aix_html/ch08_ado/ado_rec0.htm
> > >
> > >http://www.chilisoft.com/caspdoc/36_aix_html/ch08_ado/ado_re25.htm
> > >
> > >
> > >-----Urspr�ngliche Nachricht-----
> > >Von: Dirk Hildebrandt [mailto:[EMAIL PROTECTED]] 
> > >Gesendet: Donnerstag, 23. Mai 2002 20:57
> > >An: ASP Datenbankprogrammierung
> > >Betreff: [aspdedatabase] AW: RE: sql - limit MSsqlserver2000
> > >
> > >danke f�r die schnellen reaktionen.
> > >idee ist angekommen, aber nicht m�glich, da kein permanent 
> > >aufsteigender wert exisitert und nicht implementierbar ist.
> > >
> > >ist es m�glich, die selectanweisung zu schachteln?
> > >das heisst, das was nach dem TOP noch �brigbleibt als zweite 
> > >ausgangssituation der daten zu nutzen?
> > >
> > >gr�sse
> > >dirk
> > >
> > >-----Urspr�ngliche Nachricht-----
> > >Von: Claudius Ceteras [mailto:[EMAIL PROTECTED]]
> > >Gesendet: Donnerstag, 23. Mai 2002 20:23
> > >An: ASP Datenbankprogrammierung
> > >Betreff: [aspdedatabase] RE: sql - limit MSsqlserver2000
> > >
> > >
> > >Das hast Du richtig verstanden top x gibt nur die ersten x 
> > >aus.... Paging kannst Du beim mssqlserver am performantesten 
> > >implementieren, wenn Du ein (am besten: int-)feld hast, nach 
> > >dem Du sortieren kannst... Es muss nicht mal l�ckenlos sein... 
> > >Dann kannst Du sowas machen:
> > >
> > >Select top 10 * from tabelle order by feld where feld>100
> > >
> > >Wenn obiges die aktuelle Page ist, dann muss es f�r die 
> > Seite davor so
> > >heissen:
> > >Select top 10 * from tabelle order by feld where feld<100
> > >
> > >Und f�r die n�chste Seite:
> > >Select top 10 * from tabelle order by feld where 
> > >feld>*maxfeld* ..wobei *maxfeld* der inhalt von feld der 
> > >letzen reihe in der aktuellen seite..
> > >
> > >Dabei muss man aufpassen in welche Richtung man bl�ttert... 
> > >Danach richtet sich es, ob man < oder > benutzt...
> > >
> > >Hoffe, ich habe mich klar genug ausgedr�ckt...
> > >
> > >Gruss,
> > >
> > >Claudius
> > >
> > >>
> > >> hallo liste!
> > >>
> > >> ich habe bisher gern mit mysql gearbeitet und ben�tigte dort 
> > >oft eine 
> > >> funktion, die den ergebnisbereich datenbankseitig 
> > begrenzt. das ist 
> > >> fix und belastet den server scripttechnisch wenig.
> > >> SELECT * FROM tabelle WHERE a = b ORDER BY c LIMIT 50,10
> > >> (gibt 10 datens�tze ab nr 50 aus)
> > >>
> > >> leider fehlt mir eine entsprechende funktion in der syntax des 
> > >> mssqlservers. die l�sung �ber den datenzeiger des recordsets 
> > >ist recht 
> > >> aufw�ndig zu schreiben, zumal das sql-statement auch per 
> > >> �bergabeparameter dynamisch
> > >> erzeugt werden kann und damit sehr einfach bl�tterbare
> > >> ergebnislisten zu
> > >> erzeugen sind.
> > >>
> > >> wer hat einen tip, wie sich der sql-server diesbez�glich 
> > ansprechen 
> > >> l�sst? die TOP variante hab ich entweder falsch 
> > verstanden, oder ich
> > >> kann immer
> > >> tats�chlich nur die jeweils ersten recordsets avisieren.
> > >>
> > >> gr�sse und dank
> > >>
> > >> dirk
> > >>
> > >>
> > >> | [aspdedatabase] als [EMAIL PROTECTED] subscribed 
> > >> | http://www.aspgerman.com/archiv/aspdedatabase/ = 
> > Listenarchiv Sie 
> > >> | k�nnen sich unter folgender URL an- und abmelden: 
> > >> | 
> > 
> >http://www.aspgerman.com/aspgerman/listen/anmel>den/aspdedatabase.asp
> > >>
> > >
> > >
> > >| [aspdedatabase] als [EMAIL PROTECTED] subscribed 
> > >| http://www.aspgerman.com/archiv/aspdedatabase/ = 
> Listenarchiv Sie 
> > >| k�nnen sich unter folgender URL an- und abmelden: 
> > >| 
> > http://www.aspgerman.com/aspgerman/listen/anme> 
> lden/aspdedatabase.asp
> > >
> > >
> > >| [aspdedatabase] als [EMAIL PROTECTED] subscribed 
> > >| http://www.aspgerman.com/archiv/aspdedatabase/ = 
> Listenarchiv Sie 
> > >| k�nnen sich unter folgender URL an- und abmelden: 
> > >| 
> > http://www.aspgerman.com/aspgerman/listen/anme> 
> lden/aspdedatabase.asp
> > >
> > >
> > >| [aspdedatabase] als [EMAIL PROTECTED] subscribed 
> > >| http://www.aspgerman.com/archiv/aspdedatabase/ = 
> Listenarchiv Sie 
> > >| k�nnen sich unter folgender URL an- und abmelden: 
> > >| 
> > http://www.aspgerman.com/aspgerman/listen/anme> 
> lden/aspdedatabase.asp
> > >
> > 
> > 
> > | [aspdedatabase] als [EMAIL PROTECTED] subscribed
> > | http://www.aspgerman.com/archiv/aspdedatabase/ = Listenarchiv
> > | Sie k�nnen sich unter folgender URL an- und abmelden:
> > | 
> http://www.aspgerman.com/aspgerman/listen/anmelden/aspdedataba
se.asp
> 


| [aspdedatabase] als [EMAIL PROTECTED] subscribed
| http://www.aspgerman.com/archiv/aspdedatabase/ = Listenarchiv
| Sie k�nnen sich unter folgender URL an- und abmelden:
| http://www.aspgerman.com/aspgerman/listen/anmelden/aspdedatabase.asp


| [aspdedatabase] als [EMAIL PROTECTED] subscribed
| http://www.aspgerman.com/archiv/aspdedatabase/ = Listenarchiv
| Sie k�nnen sich unter folgender URL an- und abmelden:
| http://www.aspgerman.com/aspgerman/listen/anmelden/aspdedatabase.asp


| [aspdedatabase] als [email protected] subscribed
| http://www.aspgerman.com/archiv/aspdedatabase/ = Listenarchiv
| Sie k�nnen sich unter folgender URL an- und abmelden:
| http://www.aspgerman.com/aspgerman/listen/anmelden/aspdedatabase.asp

Antwort per Email an