Abfrage "nicht gleich" funktioniert nicht
Ich habe einen ganz einfachen Abfrage wie diese:
SELECT * FROM `all_conversations` WHERE `deleted_1` != '1';
Und meine deleted_1
standardmäßig ist null
oder einige user-id, aber für einige Grund diese Abfrage gibt immer mir 0 Zeilen, ich habe auch versucht <>
aber noch kein Glück, was falsch sein könnte?
EDTI nach der Ausführung mehr querys finde ich heraus, dass meine Probleme wurde default-Wert deleted_1
Feld, es war NULL
so i modifiziert meine Anfrage und jetzt funktioniert es einwandfrei:
SELECT *
FROM `all_conversations`
WHERE `deleted_1` != 'NULL'
AND `deleted_1` != 23
InformationsquelleAutor der Frage Linas | 2012-01-24
Du musst angemeldet sein, um einen Kommentar abzugeben.
NULL-Werte eine Besondere Behandlung benötigen: http://dev.mysql.com/doc/refman/5.1/en/working-with-null.html
Ich würde vorschlagen, mit der Diamant-operator (
<>
) zu Gunsten von!=
als das erste ist eine gültige SQL-und die zweite ist eine MySQL Zusatz.InformationsquelleAutor der Antwort TimWolla
Können Sie versuchen, diese:
deleted_1 is not null and deleted_1 != '1'
?Oder diese
deleted_1 is null or deleted_1 != '1'
:Es hängt wirklich davon ab, was Sie wollen zurück zu bekommen.
InformationsquelleAutor der Antwort greut
Ich empfehlen die Verwendung von NULL-safe-operator und negation
InformationsquelleAutor der Antwort Viktor Zeman
Versuchen.. Hoffe, Es wird für Sie arbeiten
InformationsquelleAutor der Antwort indika
Wie zu entfernen die Anführungszeichen um die 1?
InformationsquelleAutor der Antwort Teun Zengerink