Co to za pole? Operator IN nie może być używany z pojedynczym polem, ale ma być używany w podzapytaniach lub z predefiniowanymi listami:
-- subquery
SELECT a FROM x WHERE x.b NOT IN (SELECT b FROM y);
-- predefined list
SELECT a FROM x WHERE x.b NOT IN (1, 2, 3, 6);
Jeśli szukasz ciągu, użyj operatora LIKE (ale będzie to powolne):
-- Finds all rows where a does not contain "text"
SELECT * FROM x WHERE x.a NOT LIKE '%text%';
Jeśli ograniczysz go tak, aby szukany ciąg zaczynał się od podanego ciągu, może używać indeksów (jeśli w tym polu jest indeks) i działać dość szybko:
-- Finds all rows where a does not start with "text"
SELECT * FROM x WHERE x.a NOT LIKE 'text%';