Your “where” clause will return all rows where name does not match username AND where name is not null.
If you want to include NULL results as well, you can try following where clause:
where name <> ‘username’ or name is null
If you are looking for strings that do not contain the word “username” as a substring, then like can be used:
where name not like ‘%username%’