3 Stimmen

SELECT WHERE field!=value wie in mysql?

Ich kann die Antwort nicht finden, da die Suche nach mysql NOT in Google ein Alptraum ist (sogar mit den Anführungszeichen).

Ich muss eine Abfrage wie diese machen:

SELECT * FROM table WHERE field=value AND field2!=value2 AND field3!=value3

Wie wird es gemacht? Ist es überhaupt möglich?

6voto

George Stocker Punkte 56164
SELECT * FROM table WHERE 
        ((field = value) AND  
        (field2 <> value2) AND 
        (field3 <> value3))

Wenn Sie mit folgenden Themen zu tun haben NULL müssen Sie zwei Dinge tun:

  1. Utilisez SET ANSI_NULLS ON
  2. Erklären Sie NULL Werte auf einen Dummy-Wert.

SQL kann Nullen nicht vergleichen.

Um das zu tun:

SET @value = ISNULL(@value, -1);

4voto

Jason Cohen Punkte 78227

Ja, Sie können genau das tun, was Sie geschrieben haben, aber verwenden Sie <> anstelle von !=

Vielleicht hängt die Antwort davon ab, was ein "Wert" ist? Zum Beispiel, für eine ganze Zahl 123 value wäre 123 für eine Zeichenkette "foobar". value wäre 'foobar' .

4voto

Eoin Campbell Punkte 42038

Haben Sie schon einmal die <> Betreiber

SELECT * FROM table WHERE field = value AND field2 <> value2

2voto

Peter Turner Punkte 11087

Haben Sie "<>" ausprobiert? Das funktioniert in Delphi

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X