Apr 13, 2007
SQL Unlimited - aus LIMIT wird TOP
Manchmal möchte man das Ergebnis einer Datenbank-Abfrage begrenzen. Man möchte nur die 10 teuersten Produkte oder die ersten 50 Datensätze einer Abfrage haben, weil man entweder nicht mehr anzeigen kann oder den Rechen-Aufwand reduzieren will.
Die folgende Abfrage für die Northwind-Datenbank funktioniert nicht in MS Access:
SELECT ProductName, UnitPrice FROM products ORDER BY UnitPrice DESC LIMIT 10;
Dabei wird diese Fehlermeldung ausgegeben:
Syntaxfehler (fehlender Operator) in Abfrageausdruck 'Unitprice LIMIT 10'.
Das gewünschte Ergebnis kann jedoch mit einer ähnlichen Anweisung ausgelesen werden:
SELECT TOP 10 ProductName, UnitPrice FROM products ORDER BY UnitPrice DESC;
Thomas Richter Von >>
Abgelegt unter >>
Tags >>
Abgelegt unter >>
Tags >>
- insgesamt: 915 // heute: 2 // zuletzt: 7. January 2009


SWR
Na ja, wenn schon die 10 teuersten Produkte, dann solte das so aussehen:
… ORDER BY UnitPrice DESC;
So viel Zeit muß sein ;-)
Jul 8th, 2007
Thomas Richter
Stimmt, danke für den Hinweis!
Ab jetzt steht es richtig im Blog.
Jul 8th, 2007
Jan Häußler
Hehe betriebsblind würde ich sagen ;)
- Thomas, ich gratuliere dir zum 100sten Kommentar! Den Preis dafür darfst du bei M&M selber kaufen. ;)
Jul 8th, 2007
Reply to “SQL Unlimited - aus LIMIT wird TOP”