我写了这个查询,但现在我想忽略abv
之后有这个字符串@
的所有电子邮件(都有大写或小写字母)。希望有人能提供帮助。
SELECT user_data.alternative_mail
FROM user_data
JOIN users_map
ON users_map.user_id = user_data.user_id
WHERE users_map.service_id = 1
AND users_map.service_user_id = 0
AND user_data.alternative_mail NOT LIKE '%@abv.bg'
AND user_data.alternative_mail IS NOT NULL
AND user_data.alternative_mail <> '';
答案 0 :(得分:1)
使用ILIKE
代替LIKE
(PostgreSQL Documentation),根据活动区域设置使匹配不区分大小写。
BTW:LIKE
不使用正则表达式
答案 1 :(得分:0)
试试这个:
SELECT user_data.alternative_mail
FROM user_data
JOIN users_map
ON users_map.user_id = user_data.user_id
WHERE users_map.service_id = 1
AND users_map.service_user_id = 0
AND user_data.alternative_mail NOT ILIKE '%@%abv%'
AND user_data.alternative_mail IS NOT NULL
AND user_data.alternative_mail <> '';