gpt4 book ai didi

mysql - 从字段 mysql 中提取电子邮件 ID

转载 作者:行者123 更新时间:2023-11-29 11:23:55 25 4
gpt4 key购买 nike

我有一个名字列。但它有名字和电子邮件 ID。例如。 “bobbybob@gmail.com Bobby”,有时像这样,“Bobby bobbybob@gmail.com”

我想从名字列中获取电子邮件 ID。

我尝试过这种方法:

select left(First_Name,locate(' ',First_Name)-1)
from mytable
where First_Name like '%gmail%' and Email_Personal=""

但这仅适用于第一种情况,即电子邮件 ID 为第一个,而在第二种情况下,名称为第一个,它会获取名称。我还想在将电子邮件 ID 存储到另一列 -Email_Personal 后删除它。因此,换句话说,我想从first_name中获取电子邮件ID,并将其存储到email_personal中,并只在first_name中保留姓名。

我也尝试过这种方法:

select substring_index(first_name,' ',1) 
from mytable
where First_Name like '%gmail%' and Email_Personal1=""

但这也仅适用于第一种情况。如果先有姓名,则它仅返回姓名而不是电子邮件 ID。

最佳答案

如果您的名字总是只有一个字,您可以这样做:

select (case when substring_index(first_name, ' ', 1) like '%@%'
then substring_index(first_name, ' ', -1)
else substring_index(first_name, ' ', 1)
end) as RealFirstName

您可以使用类似的逻辑来提取电子邮件地址:

select (case when substring_index(first_name, ' ', 1) like '%@%'
then substring_index(first_name, ' ', 1)
else substring_index(first_name, ' ', -1)
end) as EmailAddress

关于mysql - 从字段 mysql 中提取电子邮件 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38527898/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com