使用 LIKE '_@_%' 时,电子邮件地址未显示在查询中 - POSTGRE SQL
Email addresses not showing in query when using LIKE '_@_%' - POSTGRE SQL
我正在清理一些用户数据并尝试查找输入到 "First Name" 列中的所有电子邮件。理想情况下,我会 运行 一个简单的函数,任何带有“@”的字段都会出现。
我用来查找电子邮件的代码是
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
我正在清理一些用户数据并尝试查找输入到 "First Name" 列中的所有电子邮件。理想情况下,我会 运行 一个简单的函数,任何带有“@”的字段都会出现。
我用来查找电子邮件的代码是
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