Допустим, у меня есть эта таблица, называемая подписками в Redshift (http://sqlfiddle.com/#!17/c6c53/1):
id | subscription_type | subscription_origin
-------------------------------------------------
100 | monthly | trial_page
101 | annual_trial | sales_rep
102 | monthly | sales_rep
103 | annual | sales_rep
возвращение всех строк без «пробной» в типе подписки выглядит правильно:
select * from subscriptions where subscription_type NOT LIKE '%trial%'
http://sqlfiddle.com/#!17/c6c53/2
но яЯ хочу вернуть все строки, которые не имеют 'trial' в или subscription_type или subscription_origin.
Итак, я написал этот запрос:
SELECT *
FROM subscriptions
WHERE subscription_type NOT LIKE '%trial%' OR
subscription_origin NOT LIKE '%trial_page%'
, но http://sqlfiddle.com/#!17/c6c53/3 возвращает все строки.
как исключить все строки с пробным присутствием в строке?