使用 LIKE '_@_%' 时查询中未显示电子邮件地址 - POSTGRE SQL



我正在清理一些用户数据,并试图查找输入到"名字"列中的任何电子邮件。理想情况下,我会运行一个简单的函数,并且会出现任何带有"@"的字段。

我用来查找电子邮件的代码是

SELECT * FROM "Import File"
WHERE "First Name" LIKE '_@_%';

我得到了 0 个结果,所以我尝试了

WHERE "First Name" LIKE '_@_%'
OR "First Name" LIKE '__@_%' 
OR "First Name" LIKE '___@_%'

等等。

问题是我为每个 OR LIKE 得到不同数量的结果,每次输入都会很乏味。有没有更快的功能?(复制粘贴除外)

LIKE运算中,下划线字符(_)是单字符通配符,而百分线字符(%)是多字符通配符。

因此,要查找列是否有 at 符号,您可以使用以下逻辑:

WHERE "First Name" LIKE '%@%'

。或。。。

WHERE POSITION('@' IN "First Name") > 0

最新更新