Andi: Abfrage mit verschiedenen Kriterien

Beitrag lesen

Hallo,

mein Problem ist folgendes:

Per Webservice werden verschiedene Daten mit verschiedenen Kriterien abgefragt. Manche Bedingungen stehen dabei in einer separaten Tabelle.
Beim Webservice können dabei Bedingungen übergeben werden, welche folgendermaßen aussehen:

A;B|C   -> Bedeutet A && B || C
A;(B|C) -> Bedeutet A && (B || C)

Nun muss ich daraus eine Query basteln, was mir Probleme bereitet. Im obigen Fall wäre die Abfrage z.b.:

A;B|C   -> Bedeutet A && B || C
FROM tab1 WHERE id IN (SELECT id FROM tab2 WHERE feld = A OR feld = C) AND
                id IN (SELECT id FROM tab2 WHERE feld = B OR feld = C)

A;(B|C) -> Bedeutet A && (B || C)
FROM tab1 WHERE id IN (SELECT id FROM tab2 WHERE feld = A OR (feld = B OR feld = C))

Das sind jetzt nur einfache Beispiele d.h. es können auch kompliziertere Abfragen eingehene z.b. (A|B;(C|D)).

Hat jemand eine Idee oder Lösungsansatz, wie man solche Bedingungen in eine Abfrage bekommt?
Grüße
Andi