如何在 MySQL 中从电子邮件地址中选择域名?
mysqlmysqli database
要从电子邮件地址中选择域名,您可以使用 MySQL 内置的 SUBSTRING_INDEX() 函数。
为了理解这个概念,让我们创建一个表。以下是创建表的查询。
mysql> create table selectDomainNameOnly −> ( −> UserEmailAddress varchar(200) −> ); Query OK, 0 rows affected (0.52 sec)
使用 insert 命令在表中插入记录。该记录将包含电子邮件 ID,我们需要从中获取域名。查询如下 −
mysql> insert into selectDomainNameOnly values('John123@yahoo.com'); Query OK, 1 row affected (0.10 sec) mysql> insert into selectDomainNameOnly values('234Bob@gmail.com'); Query OK, 1 row affected (0.24 sec) mysql> insert into selectDomainNameOnly values('Carol23595@hotmail.com'); Query OK, 1 row affected (0.16 sec)
使用 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)