Veröffentlicht 13. Oktober 200915 j Hallo, wie kann ich auf einem SQL Server 2008 das Ergebnis einer SELECT-Abfrage seitenweise ausgeben? Beispiel: Als Ergebnis erhalte ich 90.000 Datensätze. Datensatz 1 – 5.000 Seite 1 Datensatz 5.001 – 10.000 Seite 2 Usw. Gibt es deine Einstellung im Server oder einen Befehl den ich absetzen muss?
13. Oktober 200915 j Ja aber wie gebe ich das korrekt ein LIMIT habe ich schon gefunden, allerdings nirgendwo beschrieben wie es richtig in die Abfrage einbaue.
13. Oktober 200915 j Limit beschränkt die Anzahl der zurückgegebenen Datensätze - aber: Was hat die Anzahl der Zeilen eines Abfrageergebnisses mit der überhaupt mit irgendeinem Druckvorgang zu tun? Normalerweise benutzt man irgendeine Reporting-Schnittstelle (Crystal Reports, Excel, SQL Reporting, etc.) für den Druck. Allein schon, weil man so Dinge wie Schriftart und -größe einzustellen möchte. Ich glaube also: Die Lösung lautet nicht "Limit", sondern dein Problem ist schon falsch formuliert. Wie willst du den denn was drucken? Grüße Ripper
13. Oktober 200915 j Na ja drucken will ich es nicht. Ich will es halt nur seitenweise auf dem Bildschirm bzw. in dem Ergebnissraster ausgeben. Hintergrund ist der, dass ich mich durch die Datensätze hangeln muss und mir das seitenweise zur Brust nehmen will. Gibt es da keine Möglichkeit das irgendwie seitenweise auf den Bildschirm zu bekommen?
13. Oktober 200915 j Moin, limit kennt der SQL Server AFAIK nicht. Workarounds wurden früher einmal hier diskutiert: Geniale Leute diskutieren bei fachinformatiker.de hth Reinhold
13. Oktober 200915 j Naja.. "alte" Workarounds: Seit SQL Server 2005 gibt auch in T-SQL Rownums: DECLARE @RowsProSeite INT DECLARE @Start INT SET @Start = 120000 SET @RowsProSeite = 10 SELECT * FROM ( [INDENT]SELECT row_number() OVER (ORDER BY column) AS Spalte1, Spalte2, ..SpalteX FROM table) AS A[/INDENT] WHERE A.rownum BETWEEN (@Start) AND (@Start + @RowsProSeite) Sowas? Grüße Ripper
13. Oktober 200915 j Moin, jou, genau dieser Weg wird dort beschrieben. Was wolltest du uns eigentlich sagen? Reinhold
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.