133

次のクエリがあります

SELECT * FROM table
WHERE tester <> 'username';

私はこれがテスターが文字列usernameではないすべての結果を返すことを期待していますが、これは機能していません。Like演算子の逆を探していると思いますが、わかりませんか? 私の検索では、数字の解決策を見つけました(そこから <> を取得しました)が、これは文字列では機能していないようです。

4

6 に答える 6

198

句は、一致しないAND がnullでないwhereすべての行を返します。testerusernametester

NULL を含めたい場合は、次を試してください。

where tester <> 'username' or tester is null

部分文字列として「username」という単語を含まない文字列を探している場合は、次likeを使用できます。

where tester not like '%username%'
于 2013-05-01T18:58:08.313 に答える
45

次のクエリを試してください

select * from table
where NOT (tester = 'username')
于 2013-05-01T18:58:38.453 に答える
24

NULL セーフ条件は次のようになります。

select * from table
where NOT (tester <=> 'username')
于 2016-09-01T18:00:42.203 に答える
8
select * from table
where tester NOT LIKE '%username%';
于 2013-05-01T19:00:34.817 に答える