Hallo Thomas, Ralf, In der SQL-Sprache setzt "LIMIT" eine "Where" Klausel voraus (oder eine "ORDER BY" - sonst ist sie nicht gültig.
Insofern ist die Implementierung korrekt :-) (und sinnvoll). Im Übrigen gab es sie auch bisher schon - intern. Das Resultset hatte intern eine "LIMIT" Klausel verwendet - erkennbar an dem "*" hinter den Einträgen 12/12* - was bedeutete, dass es noch mehr Einträge gibt. Ich finde es sehr gut, dass dies nun auch im direkt im Frontend zur Verfügung steht. Viele Grüße Thomas Am 10.06.2013 03:19, schrieb Ralf Kestler: > Hallo Thomas, > > ich hab das eben in der Direkteingabe für SQL ausprobiert: > > Folgendes Statement funktionierte bei mir auch nicht: > > SELECT * FROM table LIMIT x > > Was aber funktionierte waren diese beiden Statments: > > SELECT * FROM table WHERE row=y LIMIT x > > und > > SELECT * FROM table ORDER BY y LIMIT x > > Nebenbei sei bemerkt das 'LIMIT' nicht als Keyword blau markiert ist, > sondern grün wie Tabellen oder Spalten. > > Ich glaube auch nicht, dass ohne eine WHERE/ORDER BY Klausel LIMIT nicht > viel Sinn macht. > > Beste Grüße, > > Ralf > > Am 09.06.2013 19:53, schrieb Thomas Hackert: >> Hi zusammen, >> ich versuch’ gerade mich ein bisschen in der im Betreff genannten >> SQL-Abfrage einzuarbeiten ... ;) >> >> Also Folgendes: >> >> LO: Version: 4.1.0.0.beta2 >> Build ID: 33224f4f11a05cfad2249e812fcc2975fbb61f6 >> BS: Debian Testing AMD64 >> >> In der OLH zu Base gibt es im Index unter „SQL;LIMIT clause“ die Seite >> >> <quote> >> Limes >> Expands the created select statement of the SQL Query by the LIMIT X >> clause. This can be used to limit your SQL Query results to those that >> fall within the first X number of it. >> </quote> >> >> . Um das mal nachzuvollziehen und passend übersetzen zu können, hab’ ich >> mir in Base eine Tabelle mit den Feldern „Name“, „Adresse“ und >> „Telefon“ erstellt (auch die Abfrage nach dem Primärschlüssel >> beantwortet und auf „Autowert“ gestellt). Im Anschluss habe ich die >> Tabelle zum Bearbeiten geöffnet, drei erfundene Namen mit Adresse und >> Telefonnummer eingetragen, danach auf „Abfragen“ geklickt, „Abfrage in >> der Entwurfsansicht erstellen“ gewählt und im nächsten Fenster die >> markierte Testtabelle per „Hinzufügen“ ausgewählt. Im „Query >> Design“-Fenster hatte ich dann „Name“, „Adresse“ und „Telefon“ doppelt >> angeklickt, um sie der Tabelle hinzuzufügen. Nach dem Schließen des >> Dialogs ist ja oben ein Auswahlmenü, wo „Alle“ drin steht (die >> Schnellhilfe gibt dann nur „Limit“ an). Wenn ich das händisch auf „2“ >> ändere (hab’ ja nur drei Datensätze), dann <F5> für „Abfrage ausführen“ >> klicke, kommt als Fehlermeldung >> >> <quote> >> SQL-Status: 37000 >> Fehler-Code: -11 >> >> Unexpected token: 2 in statement [SELECT "Name", "Adresse", "Telefon" >> FROM "test" LIMIT 2] >> </quote> >> >> beim zweiten Eintrag „Fehler“ >> bzw. >> >> <quote> >> Das SQL-Kommando, welches zu diesem Fehler führte, ist: >> >> SELECT "Name", "Adresse", "Telefon" FROM "test" LIMIT 2 >> </quote> >> ... :( >> >> Hab’ ich da die „LIMIT clause“ (LIMIT-Bedingung?) falsch verstanden? >> Kann mir das einer von euch Base-Spezis mal erklären (und vielleicht >> noch die Übersetzung machen ;?)? >> >> Danke im Voraus und noch einen schönen Abend >> Thomas. >> > > > -- ## Unterstützung der freien Office Suite ## http://de.libreOffice.org - www.LibreOffice.org ## Vorstand Freies Office Deutschland e.V. ## Mitglieder willkommen: www.FroDeV.org -- Liste abmelden mit E-Mail an: discuss+unsubscr...@de.libreoffice.org Probleme? http://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/ Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de Listenarchiv: http://listarchives.libreoffice.org/de/discuss/ Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert