105 votes

MySQL WHERE : comment écrire "!=" ou "not equals" ?

J'ai besoin de faire ça

DELETE FROM konta WHERE taken != ''

Mais != n'existe pas dans mysql. Quelqu'un sait comment faire ?

164voto

RolandoMySQLDBA Points 19439
DELETE FROM konta WHERE taken <> '';

44voto

Mark Byers Points 318575

En != opérateur existe bel et bien ! Il s'agit d'un alias de la norme <> opérateur.

Peut-être que vos champs ne sont pas réellement des chaînes vides, mais plutôt des NULL ?

Comparer à NULL vous pouvez utiliser IS NULL o IS NOT NULL ou le opérateur d'égalité sans risque de nullité <=> .

13voto

minhas23 Points 365

Vous utilisez peut-être une ancienne version de Mysql mais vous pouvez sûrement utiliser

 DELETE FROM konta WHERE taken <> ''

Mais il existe de nombreuses autres options. Vous pouvez essayer les suivantes

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

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

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X