I have the following query
SELECT * FROM table
WHERE tester <> 'username';I am expecting this to return all the results where tester is not the string username, But this not working. I think I am looking for the inverse of the Like operator but I am not sure? In my searches I have found solutions for numbers (that's where i got <> from), but this seems to not be working with strings.
6 Answers
Your where clause will return all rows where tester does not match username AND where tester is not null.
If you want to include NULLs, try:
where tester <> 'username' or tester is nullIf you are looking for strings that do not contain the word "username" as a substring, then like can be used:
where tester not like '%username%' 1 Try the following query
select * from table
where NOT (tester = 'username') 0 NULL-safe condition would looks like:
select * from table
where NOT (tester <=> 'username') 2 select * from table
where tester NOT LIKE '%username%'; The strcomp function may be appropriate here (returns 0 when strings are identical):
SELECT * from table WHERE Strcmp(user, testername) <> 0; Another way of getting the results
SELECT * from table WHERE SUBSTRING(tester, 1, 8) <> 'username' or tester is null