Di solito uso la corrispondenza dei modelli usando la parola chiave "non in".
SELECT kolom1 from tabel where kategori not in ('A', 'B')
Poi ho provato a usare la parola chiave "non come nessuno"
SELECT kolom1 from tabel where kategori not like any (array['A', 'B'])
Penso che il risultato sarà lo stesso. Ma dopo aver eseguito i risultati sono diversi. Sono curioso di sapere perché i risultati sono diversi e dopo averlo scoperto, come funziona la parola chiave any è che restituirà true se uno degli elementi viene soddisfatto. Quindi se l'elemento A viene confrontato con la parola chiave non come nessuna, sarà vero perché soddisfa i criteri, non uno degli elementi nell'array, ovvero B. E viceversa. Sebbene il risultato desiderato non sia né l'elemento A né l'elemento B. Per rispondere a questo problema, viene utilizzata la parola chiave "non come tutti".
SELECT kolom1 from tabel where kategori not like all (array['A', 'B'])
Riferimento
overflow dello stack