2016-10-06 47 views
0

我有一个不同域名的电子邮件地址列表,例如[email protected][email protected][email protected],并想知道如何从电子邮件中获取域名(例如gmail,woodstock,jetbrains)。到目前为止,我已经得到了:从电子邮件地址中选择域名

SELECT SUBSTR(Email, INSTR(Email, '@') + 1) as DOMAIN FROM Table

从而消除前面和“@”符号的一切。 我已经看到了类似的帖子为MySQL但SQLite不具备SUBSTRING_INDEX功能我想知道什么替代有SQLite的

任何帮助将是巨大的感谢:)

回答

1

您可以使用此其工作: select substr(Email, instr(Email, '@') + 1) as DOMAIN from Table;

参考实现:

http://sqliteonline.com/#fiddle-57f6dd1371fedc4893affeede56d1ad5d910a3d1a0ab612286

更新:

只得到域名提供商名称:

select replace(substr(name, instr(name, '@') + 1), ltrim(substr(name, instr(name, '@') + 1), replace(substr(name, instr(name, '@') + 1), '.', '')), '') as provider from demo; 

参考实现:

http://sqliteonline.com/#fiddle-57f6e07c3b960bc86eb66cd46c8958b6bdd1c34d4bb6456091

+0

嘿,感谢您的答复!我试图让域名提供商的名字(例如,来自[email protected]的Gmail),我想怎么做才能做到这一点? – Setsuna

+0

我已根据您的需要更新了以上SQL,可能适用于您的情况。 –

+0

是的,它的作品!非常感谢^ _ ^ – Setsuna

相关问题