MySQL WHERE:「!=」または「等しくない」の書き方?


93

私はこれをする必要があります

DELETE FROM konta WHERE taken != ''

しかし、!=はmysqlに存在しません。誰でもこれを行う方法を知っていますか?


1
@DanielKamilKozar私は質問に答える前に個人をプロファイリングすることになっていることを知りませんでした。
カーミット

回答:



36

!=演算子は、最も確かが存在しません!これは、標準<>オペレーターの別名です。

おそらくあなたのフィールドは実際には空の文字列ではなく、代わりにNULL

比較するNULLには、IS NULLor IS NOT NULLまたはnullセーフ等しい演算子を<=>使用できます。


え、どこで見ることができますNULL(1)を行っているが、削除するために奇妙に思える空ではありません。..またはNULL

11

あなたはMysqlの古いバージョンを使用しているかもしれませんが、確かに使用できます

 DELETE FROM konta WHERE taken <> ''

しかし、利用可能な他の多くのオプションがあります。次のものを試すことができます

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

DELETE * from konta where NOT (taken = '');
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.