[ERLEDIGT] SQl- Anweisung mit mehreren 'OR' wirkt nicht

  • Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!
Status
Für weitere Antworten geschlossen.

LeCub

Aktives Mitglied
28 Juni 2015
355
39
28
Hallo,
Ich habe noch mal eine Frage bezüglich MySQL:
Ich führe eine DB-Abfrage mit folgendem SQL- String durch:
SQL:
SELECT * FROM boards WHERE marke<>'Fanatic' OR marke='Tabou' OR marke='JP' AND klasse='Wave'
(Das * habe Ich nachträglich eingefügt, um den Code zu kürzen).
Jetzt erwarte Ich, dass das 'AND' das 'klasse=Wave' bedingt und deshalb auch nur dementsprechende Datensätze raussucht.
Dem ist aber nicht so, sondern es greift nur der Code vor dem 'AND'.
Wenn Ich jetzt aber die restlichen 'OR' wegnehme:
SQL:
SELECT * FROM boards WHERE marke<>'Fanatic'  AND klasse='Wave'
Klappt der Code hervorragend und es werden nur die Spalten angezeigt, deren klasse Wave ist.

Kann man nicht mehrere 'OR' hintereinander verwenden , gibt es eine andere Erklärung dafür oder war Ich einfach nur mal wieder beschränkt?

Ich freue mich sehr über jede Hilfe.
 
B

bdt600

Guest
Überlege mal, was der Teil wohl liefert

marke<>'Fanatic' OR marke='Tabou' OR marke='JP'

Wenn marke ungleich Fanatic oder marke marke = Tabou oder marke = JP

Das liefert dir alles, weil eins davon immer zutrifft

Wenn du mehrere "oder" verbinden willst, setze Klammern drum

(marke='Tabou' OR marke='JP') AND klasse='Wave'
 
  • Like
Reaktionen: LeCub

LeCub

Aktives Mitglied
28 Juni 2015
355
39
28
Argh das mit dem 'marke<>'Fanatic' ' hatte ich total vercheckt. Dankeschön!
 
Status
Für weitere Antworten geschlossen.
Werbung:

Neueste Beiträge