Sql 只需要邮件id中的域名

Sql 只需要邮件id中的域名,sql,oracle,Sql,Oracle,我有多个邮件ID 例如: a12_err@gmail.com, fjdjf_123@yahoo.com, hj324_jgfj_12@live.com 所需输出: gmail, yahoo,live 我尝试在下面查询邮件id: select replace( subststrong textr('abc_123@gmail.com', instr('abc_123@gmail.com','@')+1), '.com','') from dual; 是否有人提出更好的解决

我有多个邮件ID

例如:

a12_err@gmail.com, fjdjf_123@yahoo.com, hj324_jgfj_12@live.com
所需输出:

gmail, yahoo,live
我尝试在下面查询邮件id:

select replace(
      subststrong textr('abc_123@gmail.com', instr('abc_123@gmail.com','@')+1),
   '.com','') 
from dual;

是否有人提出更好的解决方案?

为什么不使用ReGExpEclipse?还应该考虑其他<代码>国家代码顶级域< /代码> AS。如果电子邮件地址中包含
子域,例如
frank@mail.bla.com
输出中不需要子域。