104

我需要这样做

DELETE FROM konta WHERE taken != ''

但是 != 在 mysql 中不存在。有人知道怎么做吗?

4

3 回答 3

160
DELETE FROM konta WHERE taken <> '';
于 2012-07-10T20:53:13.333 回答
44

! = 运算符肯定存在!它是标准<>运算符的别名。

也许您的字段实际上不是空字符串,而是NULL

要进行比较,NULL您可以使用IS NULLorIS NOT NULLnull 安全等于运算符<=>

于 2012-07-10T20:56:10.953 回答
13

您可能使用的是旧版本的 Mysql,但您肯定可以使用

 DELETE FROM konta WHERE taken <> ''

但是还有许多其他选项可用。你可以试试下面的

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

DELETE * from konta where NOT (taken = '');
于 2015-07-27T06:06:26.043 回答