Просто используйте NOT REGEXP_LIKE
, содержащий шаблон '@gmail.com$'
, где знак $
используется для указания адреса электронной почты, заканчивающегося @gmail.com
:
SELECT *
FROM t
WHERE NOT REGEXP_LIKE( email,'@gmail.com$')
ИЛИ альтернативно, путем фильтрации строки через извлеченную часть после знака @
:
SELECT *
FROM t
WHERE REGEXP_SUBSTR( email,'[^@]+$') != 'gmail.com';
Обновление: ( без неравенство или НЕ В , как вы хотите ), вы также можете использовать
SELECT *
FROM t
WHERE NVL(INSTR(REGEXP_SUBSTR( email,'[@gmail.com]+$'),'@gmail.com'),0)=0;
Демо