MySQL WO: Wie schreibe ich "! =" Oder "ungleich"?

90

Ich muss das tun

DELETE FROM konta WHERE taken != ''

Aber! = Existiert nicht in MySQL. Weiß jemand, wie man das macht?

Posttwo
quelle
1
@ DanielKamilKozar Ich wusste nicht, dass ich die Person profilieren soll, bevor ich Fragen beantworte.
Kermit

Antworten:

142
DELETE FROM konta WHERE taken <> '';
RolandoMySQLDBA
quelle
34

Der Operator! = Existiert mit Sicherheit! Es ist ein Alias ​​für den Standardoperator <>.

Vielleicht sind Ihre Felder keine leeren Zeichenfolgen, sondern NULL?

Zum Vergleich NULLkönnen Sie den OperatorIS NULL oder IS NOT NULLoder den Operator null safe equals verwenden<=> .

Mark Byers
quelle
Eh, ich kann sehen, wohin das NULLgeht (+1), aber es scheint seltsam, nicht leer oder NULL löschen zu wollen ..
11

Möglicherweise verwenden Sie eine alte Version von MySQL, aber Sie können sie sicherlich verwenden

 DELETE FROM konta WHERE taken <> ''

Es stehen jedoch noch viele andere Optionen zur Verfügung. Sie können die folgenden versuchen

DELETE * from konta WHERE strcmp(taken, '') <> 0;

DELETE * from konta where NOT (taken = '');
minhas23
quelle