Syntaxregeln für Suchfilter

  1. Die erste Zeile enthält immer den Text <select where>. Diese Formulierung wurde an SQL angelehnt.
  2. Die zweite Zeile beginnt immer mit einer öffnenden Klammer.
  3. Die weiteren Zeilen enthalten jeweils eine Filteranweisung oder eine Klammerebene.
  4. Die letzte Zeile enthält die schließende Klammer.

Verknüpfungsoperatoren für Filteranweisungen

AND: Die Filteranweisung dieser Zeile wird mit der vorhergehenden UND-Verknüpft.

OR: Die Filteranweisung dieser Zeile wird mit der vorhergehenden ODER-Verknüpft.


Vergleichsoperatoren <, >, =, <> und Vergleichswerte

Groß- /Kleinschreibung wird nicht berücksichtigt!
<, > Zahl: Numerischer Vergleich von Feldinhalt und Zahl.
<, > ’Text’: Textvergleich von Feldinhalt und Zahl.
= Zahl: Test auf Gleichheit. (Numerischer Vergleich)
= ’Text’: Test auf Gleichheit. (Textvergleich)
= ’*Text’: Test, ob der Feldinhalt ’Text’ enthält.
= ’Text*’: Test, ob der Feldinhalt mit ’Text’ beginnt.
<> ’Text’: Test, ob der Feldinhalt verschieden von ’Text’ ist.
<> Zahl: Test, ob der Feldinhalt verschieden von Zahl ist


Filteranweisung (Zeile)

Beispiel mit zwei Zeilen

select where
(
    Ort = 'Berlin'
    AND Firma = '*GmbH'
)

  • Die erste Filteranweisung nach einer öffnenden Klammer beginnt mit dem Feldname. Alle weiteren Filteranweisungen innerhalb der gleichen Klammerebene beginnen mit einem Verknüpfungsoperator (AND/OR), gefolgt von einem Feldname.
  • Nach dem Feldname kommt ein Leerzeichen, dann ein Vergleichsoperator, dann wieder ein Leerzeichen gefolgt vom Vergleichswert.

Beispiel mit untergeordneter Klammerebene

select where
(
    Ort = 'Berlin'
    AND (
            Firma = '*GmbH'
            OR Firma = '* AG'
        )
)

  • Untergeordnete Klammerebenen können manuell eingefügt werden. Sie beginnen immer mit einem Verknüpfungsoperator (AND/OR), gefolgt von einer öffnenden Klammer und einem Zeilenumbruch. (Hinter einer öffnenden Klammer dürfen in der gleichen Zeile keine weiteren Anweisungen stehen.)
  • Die folgenden Zeilen enthalten jeweils eine Filteranweisung.
  • Die Klammerebene ist durch eine einzelne Klammer in einer separaten Zeile zu schließen.
  • Um die Lesbarkeit zu erhöhen, sollten die Klammerebenen wie im Beispiel eingerückt werden. Das Einrücken kann mit Leerzeichen oder Tabulatoren erfolgen.