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

时间:2019-01-17 22:27:30

标签: postgresql sql-like data-cleaning

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

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

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

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

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

等等。

问题是,每个“喜欢”都会得到不同数量的结果,而每次键入都会很乏味。有更快的功能吗? (除了复制粘贴)

1 个答案:

答案 0 :(得分:1)

LIKE操作中,下划线字符(_)是一个单字符通配符,而百分比字符(%)是一个多字符通配符。

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

WHERE "First Name" LIKE '%@%'

...或...

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