如何在MySQL的电子邮件地址中选择域名?

要从电子邮件地址中选择域名,可以使用MySQL的内置SUBSTRING_INDEX()函数。

为了理解这个概念,让我们创建一个表。以下是创建表的查询。

mysql> create table selectDomainNameOnly
   −> (
   −> UserEmailAddress varchar(200)
   −> );

使用insert命令在表中插入记录。该记录将包含我们需要从中获取域名的电子邮件ID。查询如下-

mysql> insert into selectDomainNameOnly values('John123@yahoo.com');
mysql> insert into selectDomainNameOnly values('234Bob@gmail.com');
mysql> insert into selectDomainNameOnly values('Carol23595@hotmail.com');

使用select语句显示表中的所有记录。查询如下-

mysql> select *from selectDomainNameOnly;

以下是输出-

+------------------------+
| UserEmailAddress       |
+------------------------+
| John123@yahoo.com      |
| 234Bob@gmail.com       |
| Carol23595@hotmail.com |
+------------------------+
3 rows in set (0.00 sec)

以下是仅选择域名的查询。查询如下-

mysql> select (SUBSTRING_INDEX(SUBSTR(UserEmailAddress, INSTR(UserEmailAddress, '@') + 1),'.',1)) as DomainName from selectDomainNameOnly;

以下是输出-

+------------+
| DomainName |
+------------+
| yahoo      |
| gmail      |
| hotmail    |
+------------+
3 rows in set (0.06 sec)