Vergleichbares zu 'Union' gesucht

Hallo,

folgendes Select-Statement funktioniert nicht, wie ich das gerne hätte:
SELECT Nr, $suchfelder FROM rbartikel WHERE SWK1Wort1 Like ‚%$Eingabe2%‘ OR SWK1Wort2 Like ‚%$Eingabe2%‘ OR SWK1Wort3 Like ‚%$Eingabe2%‘ and Titel like ‚%$Eingabe4%‘

Als Ergebnis bekomme ich nur die Datensätze, die auf die Felder SWK1Wort1 usw. zutreffen. Treffer zur Suche nach dem Titel werden nicht angezeigt.

Mit
SELECT Nr, $suchfelder FROM rbartikel WHERE SWK1Wort1 Like ‚%$Eingabe2%‘ OR SWK1Wort2 Like ‚%$Eingabe2%‘ OR SWK1Wort3 Like ‚%$Eingabe2%‘ union Select Nr, $suchfelder From rbartikel where Titel like ‚%$Eingabe4%‘
bekomme ich zumndest die Treffer für SWK1Wort1 usw UND die von Treffer für Titel - also die Vereinigungsmenge.

Allerdings such ich die Treffer, die die Schnittmenge aus SWK1Wort1 und Titel bilden.

Womit geht das?

Viele Grüße
Merlinchen

hI!

folgendes Select-Statement funktioniert nicht, wie ich das
gerne hätte:
SELECT Nr, $suchfelder FROM rbartikel WHERE SWK1Wort1 Like
‚%$Eingabe2%‘ OR SWK1Wort2 Like ‚%$Eingabe2%‘ OR SWK1Wort3
Like ‚%$Eingabe2%‘ and Titel like ‚%$Eingabe4%‘

Als Ergebnis bekomme ich nur die Datensätze, die auf die
Felder SWK1Wort1 usw. zutreffen. Treffer zur Suche nach dem
Titel werden nicht angezeigt.

kann es sein, daß hier ein paar klammern fehlen?
eine „expr1 or expr2 or expr3 and expr4“-verknüpfung sieht mehr nach einem „(expr1 or expr2 or expr3) and expr4“

„und“ und „oder“ ohne klammer ist mir persönlich zu heiß, da es doch schon einige jährchen des lernens her ist und ich mir noch nie sicher war, wie das ganze zeugs nun intern wirklich aufgelöst wird

grüße,
tomh

Hi,

kann es sein, daß hier ein paar klammern fehlen?
eine „expr1 or expr2 or expr3 and expr4“-verknüpfung sieht
mehr nach einem „(expr1 or expr2 or expr3) and expr4“

Jawoll.

„und“ und „oder“ ohne klammer ist mir persönlich zu heiß, da
es doch schon einige jährchen des lernens her ist und ich mir
noch nie sicher war, wie das ganze zeugs nun intern wirklich
aufgelöst wird

Dazu gibt es eine brauchbare Eselsbrücke: in der Boole’schen Algebra wird der OR-Operator mit dem Pluszeichen ‚+‘ dargestellt, der AND-Operator mit dem Punktzeichen ‚*‘. Dann gelten die gleichen Regeln wie bei der normalen Algebra: Punkt geht vor Strich. Andere Gruppierungen werden durch Klammerung erreicht.

Gruß

Sancho

danke!
Hi Tomh,

kann es sein, daß hier ein paar klammern fehlen?
eine „expr1 or expr2 or expr3 and expr4“-verknüpfung sieht
mehr nach einem „(expr1 or expr2 or expr3) and expr4“

warum auch immer war ich der Meinung, mit Klammern würde es erst recht schief gehen und habs daher erst gar nicht ausprobiert. Ohne deinen Anstoß hätte ich dann wohl noch Wochen tüfteln können…

Und jetzt wars ne Sache von wenigen Minuten. Danke!

Viele Grüße
Merlinchen