Antworten auf deine Fragen:
Neues Thema erstellen

Suche mit logische Operatoren

Josie1234

Nicht mehr ganz neu hier

Ich versuche gerade meinen Datenbank per PHP/SQL zu durchsuchen und dabei macht uns eine Zeile im Code Probleme.

$sql = "SELECT * FROM $table1 WHERE Zielgruppe_ereignis LIKE '%$suche%' OR Thema_ereignis LIKE '%$suche%' OR Titel_ereignis LIKE '%$suche%' OR Beschreibung_ereignis LIKE '%$suche%' OR Ort_ereignis LIKE '%$suche%' OR Treffpunkt_ereignis LIKE '%$suche%' AND Anfangsdatum_ereignis BETWEEN '$dat' AND '$dat1'";

Solange wir mit nur ein "OR" arbeiten funktioniert die Abfrage. Es werden nur die Datensätze innerhalb der Zeitraum angezeigt der abefragt wird. Sobald mehr als ein "OR" vorhanden ist, werden auch Daten ausgegeben die außerhalb dieser Zeitraum liegen.

Wir haben auch schon Klammern gesetzt ohne einen Unterschied festzustellen.

Was machen wir verkehrt?
 

Duddle

Posting-Frequenz: 14µHz

AW: Suche mit logische Operatoren

Was machen wir verkehrt?

Die Klammern falsch setzen. In MySQL bindet das AND stärker als das OR, deshalb wird es zuerst aufgelöst.
Code:
SELECT * 
FROM a
WHERE
 foo = 1 or
 bar = 2 and
 baz = 3
ist implizit wie folgt geklammert:
Code:
SELECT * 
FROM a
WHERE
 foo = 1 or
 (bar = 2 and
 baz = 3)

Edit: sinnvoller wäre übrigens wohl auch MATCH ... AGAINST als das OR-Gewurschtel.


Duddle
 
Zuletzt bearbeitet:

Josie1234

Nicht mehr ganz neu hier

AW: Suche mit logische Operatoren

Es tut mir leid, dass ich erst jetzt antworte, aber "Dankeschön!".

Wir wissen nicht genau warum, aber nun klappte es. Wir hatten, wie oben erwähnt, auch mit Klammern gearbeitet, aber egal wie wier sie gesetzt haben (oder auch nicht), lief es nicht. Nun aber doch. Computer. Wer soll sie verstehen? *lach*
 

Myhar

Hat es drauf

AW: Suche mit logische Operatoren

Computer. Wer soll sie verstehen? *lach*

Computer machen nichts anderes als das, was man ihnen sagt. Deshalb auch das Sprichwort: Der Computerfehler sitzt vor dem Bildschirm ;)

Freut mich aber, dass es geklappt hat. Wenn du das Endergebnis mit dem von dir geposteten Anfangsquery vergleichst, vielleicht fällt dir dann auf, warum es jetzt plötzlich geht. Ich kann es dir nicht sagen, da du deine Lösung ja verschwiegen hast.
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.565
Beiträge
1.538.067
Mitglieder
67.488
Neuestes Mitglied
Andrew56524
Oben