Exkurs_ SQL

Das Grundgerüst einer SQL-Abfrage besteht aus folgenden Schlüsselwörtern:

SELECT

FROM

WHERE

ORDER BY

    Mit der SELECT-Anweisung können Sie ein Merkmal (das, wonach Sie suchen) oder eine Liste von Merkmalen angeben. Mehrere Merkmale sind durch Kommata zu trennen.

    In der FROM-Anweisung werden die für die Abfrage benötigten Dateien angegeben. Mehrere Dateien sind durch Kommata zu trennen.

    In der WHERE-Anweisung lassen sich verschiedene Auswahlbedingungen angeben, die für die Abfrage erfüllt sein müssen. Mehrere Auswahlbedingungen sind durch die Operatoren AND und/oder OR zu verknüpfen.

    Mit der Order-By-Anweisung können Sie ein Merkmal der SELECT-Anweisung angeben, nach dem die Abfrage sortiert werden soll.

Beispiel: Sie möchten eine alphabetisch sortierte Liste aller Mandanten erhalten, die in der Stadt Berlin wohnen:

SELECT DISTINCT name, strasse, plz, ort

FROM beteiligte

WHERE ort = 'Berlin'

ORDER BY name

Die DISTINCT-Anweisung eliminiert doppelte Einträge.

Falls Sie darüber hinaus wissen möchten, in welchen Akten diese Beteiligte vorkommt, können Sie folgende Abfrage formulieren:

SELECT DISTINCT beteiligte.name, strasse, plz, ort, nr

FROM beteiligte, betakt

WHERE betakt.betnr=beteiligte.betnr AND ort = 'Berlin'

ORDER BY beteiligte.name

Die Eingabefelder für den Zeitraum "von" und "bis" können Sie in die WHERE-Anweisung mit aufnehmen. Die Datenfelder haben die Bezeichnung ":dfVon" und ":dfBis". Das folgende Beispiel zeigt das Aktenzeichen und das Rubrum aller Akten an, die Sie zwischen dem 01.10. 2020 und dem 15.10. 2020 angelegt wurden:

SELECT az, rubrum

FROM akten

WHERE angelegt "= :dfVon AND angelegt "= :dfBis

Nachdem Sie die Abfrage eingegeben und über  (F5) aktualisiert haben, sind die Datumsfelder aktiviert und können eingestellt werden.

Auch das Sachbearbeiterkürzel können Sie in die WHERE-Anweisung mit aufnehmen und wird in der Datenbankabfrage mit ":cmbSb" bezeichnet. Die o.g. Abfrage erweitern Sie wie folgt, wenn Sie nur die Akten des Sachbearbeiters "Müller" einsehen möchten:

SELECT az, rubrum

FROM akten

WHERE :cmbSb = 'MÜ'

Auch das Referat können Sie in die WHERE-Anweisung mit aufnehmen und wird in der Datenbankabfrage mit ":cmbReferat" bezeichnet. Die o.g. Abfrage erweitern Sie wie folgt, wenn Sie nur die Akten mit Referat "Familienrecht" (Kürzel: "F") einsehen möchten:

SELECT az, rubrum

FROM akten

WHERE :cmbReferat = 'F'

Nachdem Sie die Abfrage eingegeben und auf  (F5) geklickt haben, ist auch das Listenfeld für das Referat aktiviert. Sie können die Abfrage für ein anderes Referat verwenden, in dem Sie dieses einfach aus der Liste auswählen.

Zu beachten sind die einfachen Anführungszeichen und die Doppelpunkte. Groß- und Kleinschreibung wird nicht unterschieden.

Die beiden Eingabefelder für Stichwörter können Sie u.a. für zusätzliches Suchkriterium verwenden. In der Datenbankabfrage werden diese es mit ":dfStichwort" und ":dfStichwort2" bezeichnet:

Das folgende Beispiel zeigt die Suche nach einem Betreff, wobei nach zwei Begriffen gesucht wird ("Meier ./ Müller" aus dem Eingabefeld "Stichwort" und "Müller ./. Meier" aus dem Eingabefeld "Stichwort2" ):

SELECT rubrum, az

FROM akten, betakt

WHERE ( betreff = :dfStichwort or betreff = :dfStichwort2 ) AND akten.nr = betakt.nr

Tipp: Häufig sollen nur die Daten aus der aktuellen Akte berücksichtigt werden. Hierzu geben Sie in der WHERE-Klausel die Bezeichnung :nNr an.

Das folgende Beispiel gibt die Wiedervorlagen aus der aktuellen Akte aus:

SELECT datum, sb, art, text

FROM fristen

WHERE kz = 2 AND nr = :nNr

Nachdem Sie die Abfrage eingegeben und auf den Blitz geklickt haben, können Sie das Suchkriterium für den Betreff als Stichwort eingeben. Ein wenig komplizierter wird es, wenn Sie nicht nach einer exakten Übereinstimmung suchen, sondern nach allen Betreffs, in denen das Suchkriterium enthalten ist:

SELECT rubrum, az

FROM akten, betakt

WHERE betreff like '%'|| :dfStichwort ||'%' AND akten.nr = betakt.nr