SQL:如何执行字符串不等于

Dan*_*SFT 104 mysql

我有以下查询

SELECT * FROM table
WHERE tester <> 'username';
Run Code Online (Sandbox Code Playgroud)

我希望这能返回测试仪不是字符串的所有结果username,但这不起作用.我想我正在寻找Like操作员的反转,但我不确定?在我的搜索中,我找到了数字的解决方案(这是我从<>开始的地方),但这似乎不适用于字符串.

Gor*_*off 163

您的where子句将返回所有tester不匹配的行username和其中tester不为null的行.

如果要包含NULL,请尝试:

where tester <> 'username' or tester is null
Run Code Online (Sandbox Code Playgroud)

如果您要查找不包含单词"username"作为子字符串的字符串,则like可以使用:

where tester not like '%username%'
Run Code Online (Sandbox Code Playgroud)


Chr*_*ris 38

请尝试以下查询

select * from table
where NOT (tester = 'username')
Run Code Online (Sandbox Code Playgroud)


小智 18

NULL安全条件看起来像:

select * from table
where NOT (tester <=> 'username')
Run Code Online (Sandbox Code Playgroud)


Öme*_*alı 8

select * from table
where tester NOT LIKE '%username%';
Run Code Online (Sandbox Code Playgroud)


小智 7

这里的strcomp函数可能是合适的(当字符串相同时返回0):

 SELECT * from table WHERE Strcmp(user, testername) <> 0;
Run Code Online (Sandbox Code Playgroud)