Hallo!

> Unter MySQL gibt es die M�glichkeit, die Anzahl der 
> zur�ckzugebenden Datens�tze zu beschr�nken SELECT * FROM 
> myTable LIMIT 0,10 (10 Datens�tze beginnend bei 0)
> 
> Meine Frage: Gibt es im Transact SQL vom MS SQL Server auch 
> eine �hnliche M�glichkeit?

Du kannst z. B. "SELECT TOP 10 * FROM myTable" verwenden, was aber nicht
ganz das gleiche ist wie LIMIT.

Um z. B. 10 Datens�tze ab 101 zu lesen, m�ssen immer auch die ersten 100
Datens�tze gelesen werden, weil ja die Reihenfolge bestimmt werden muss,
die ja uach ganz bestimmt nicht statisch ist. Alternativ kann man mit
den Paging-Funktionen von ADO bzw. ADO.NET arbeiten.

Wichtig f�r "TOP X" ist auch, dass man eine eindeutige Sortierung
verwendet, da "TOP 10" sonst logischerweise und v�llig korrekt auch mehr
als 10 Datens�tze zur�ckgibt, um Zufallsergebnisse zu vermeiden. Hat man
eine eindeutige Sortierung, kann man mit "TOP X" und "WHERE ... > ..."
performanter als mit "LIMIT X, Y" bewerkstelligen.

Im Archiv von aspDatabase gibt es auch noch einige Beitr�ge zum Thema
"TOP X + Y"; Da kann man dann vermeiden, dass einzelne Zeilen auf einer
extra Seite angezeigt werden.

Freundliche Gr��e
Joachim van de Bruck


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

Antwort per Email an