Syntaxfehler in SQL Abfrage, aber warum?

...komplette Frage anzeigen

3 Antworten

Ach so, dann habe ich das falsch verstanden. Dann versuche mal das hier: mysql_query("SELECT * FROM links WHERE (delete = 'NULL' AND (content like '%".$search."%' OR comment like '%".$search."%')) ORDER BY date DESC");

Oh klasse ich habs :) Hast mir sehr geholfen, auch wenn es etwas anders funktioniert hat:

SELECT * FROM links WHERE ('delete'=NULL AND content like '%' OR comment like '%')ORDER BY date DESC

Jetzt habe ich nur das nächste Problem... So liefert er mir auch alle Werte zurück, obwohl sie als gelöscht markiert sind. Trotz der AND-Bedingung... hm...

0
@elcucuy

da sitzen die klammern falsch in der where bedingung: fasse mal den OR-block in eine klammer zusammen: AND (content like '%".$search."%' OR comment like '%".$search."%')

so wie in meinem beispiel da oben

0
@JoeyJones

Okay, irgendwie will es nicht klappen... Habs mit mehreren Varationen versucht, aber irgendwie...

SELECT * FROM links WHERE delete IS NULL AND (content like '%' OR comment like '%')ORDER BY date DESC

...ergibt auch nur immer denselben Fehler: 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'delete IS NULL AND (content like '%' OR comment like '%')ORDER BY da' at line 1

0

Du solltest nicht auf NULL gehen, sondern einen Wert in die Spalte eintragen. Beispielsweise 1 wenn der Datensatz gelöscht ist und 0, wenn er noch vorhanden ist.

Hallo, danke erstmal. Also genauso ist es auch gedacht. Er soll den SELECT nur für die ausführen, bei denen in der delete Spalte "NULL" steht... Daher SELECT FROM WHERE delete IS NULL...

0

Da hast du ja jetzt wieder "IS NULL" genommen, das ging ja nicht. So müsste das klappen: SELECT * FROM links WHERE (('delete'=NULL) AND (content like '%' OR comment like '%'))ORDER BY date DESC

Naja eigentlich sollten "IS NULL" oder "=NULL" dasselbe Ergebnis bringen. Jedenfalls funktioniert es wie du sagst von der Syntax her, nur bekomme ich jetzt gar kein Ergebnis zurück... Vielleicht hab ich schon ein Brett vorm Kopf, weil ich schon ne Weile hier sitze ;) Ich glaube um den Spaltennamen dürfen keine Hochkommas, nur sagt er mir dann wieder Syntaxfehler. Ich mache mal besten mal eine Pause, aber trotzdem vielen Dank schonmal!

0
@elcucuy

Ich glaube besser ist das ;-) Mach mal ne Pause oder schlaf eine Runde und dann findet sich der Fehler schon von alleine. Viel Erfolg und Grüße

0

Was möchtest Du wissen?