Seite 1 von 1

Re: Abfrage mit Schleife in SQL

Verfasst: So, 16.12.2012 09:34
von RobertG
Du musst nachschauen, was dazu die zugrundeliegende Datenbank bietet. Wenn Du z.B. mit der internen Datenbank HSQLDB arbeitest, dann gibt es ein paare Versionen mit CASE ... WHEN ... Das sind aber keine Schleifen. Die Abfragen werden von vorne nach hinten durchgearbeitet.
Die Grundlagen dazu kannst Du in Eglisch hier nachschlagen: http://hsqldb.org/doc/1.8/guide/ch09.html
Ins Deutsch übersetzt und mit kleinen Beispielen versehen ist das Base-Handbuch http://de.libreoffice.org/hilfe-kontakt/handbuecher/ - dort etwas nach unten scrollen.

Gruß

Robert

Re: Abfrage mit Schleife in SQL

Verfasst: So, 16.12.2012 11:45
von juetho
Eine Ergänzung, die sich mehr auf SQL bezieht: Schleifen gehören in den Bereich Programmierung.* Auch für SQL gibt es das, nämlich bei eigenen Funktionen, Triggern und (vor allem) Prozeduren, nämlich Stored Procedures. Bei HSQL gibt es das (nur) mithilfe von Java, siehe den ersten Link in Roberts Antwort. Für Base geht der einfachere Weg (und IMHO bessere) über Makros, siehe den zweiten Link in Roberts Antwort.

Im Übrigen verweise ich auf die Einführung in SQL. Dort gibt es auch mehrere Kapitel zur Programmierung mit SQL für andere Datenbank-Systeme. Diese können auch über Base in LibreOffice benutzt werden. Damit kann man die hohe Funktionalität einer "richtigen" Datenbank mit der direkten (relativ leichten) Bedienbarkeit von LibO verbinden.

Gruß Jürgen

* Nachtrag: Bei "einfachen" SQL-Befehlen - also bei SELECT, INSERT, UPDATE, DELETE - sind Schleifen völlig deplatziert. Diese Befehle verarbeiten immer Datenmengen, und zwar grundsätzlich ohne vorgegebene Reihenfolge. Eine Regelung "wiederhole etwas" ist in diesem Zusammenhang unsinnig.