Sql 仅从配置单元中的电子邮件id提取域名
在我的配置单元表中,我有一个电子邮件地址列:xxxx@gmail.com 我想单独显示“gmail”。我尝试使用regexp\u extract,但没有得到所需的输出。远没有 也适用于电子邮件ID,如xxxx@ffff.nec.co.jp,我希望输出为“ffff.nec.co” 下面是我的表达式:选择regexp\u extract('xxxx@gmail.com','.([^.]+)') 但它并没有带来预期的产出。 请帮帮我,伙计们。Regexp或substr适合我 选项1Sql 仅从配置单元中的电子邮件id提取域名,sql,regex,hive,hiveql,Sql,Regex,Hive,Hiveql,在我的配置单元表中,我有一个电子邮件地址列:xxxx@gmail.com 我想单独显示“gmail”。我尝试使用regexp\u extract,但没有得到所需的输出。远没有 也适用于电子邮件ID,如xxxx@ffff.nec.co.jp,我希望输出为“ffff.nec.co” 下面是我的表达式:选择regexp\u extract('xxxx@gmail.com','.([^.]+)') 但它并没有带来预期的产出。 请帮帮我,伙计们。Regexp或substr适合我 选项1 hive>
hive> select regexp_extract('xxxx@gmail.com' ,'@(.*)\\.',1);
OK
gmail
hive> select regexp_extract('xxxx@ffff.nec.co.jp' ,'@(.*)\\.',1);
OK
ffff.nec.co
选择2
hive> select regexp_extract('xxxx@gmail.com' ,'(?<=@).*(?=\\.)',0);
OK
gmail
hive> select regexp_extract('xxxx@ffff.nec.co.jp' ,'(?<=@).*(?=\\.)',0);
OK
ffff.nec.co
hive>选择regexp\u提取('xxxx@gmail.com“,”(?选项1
hive> select regexp_extract('xxxx@gmail.com' ,'@(.*)\\.',1);
OK
gmail
hive> select regexp_extract('xxxx@ffff.nec.co.jp' ,'@(.*)\\.',1);
OK
ffff.nec.co
选择2
hive> select regexp_extract('xxxx@gmail.com' ,'(?<=@).*(?=\\.)',0);
OK
gmail
hive> select regexp_extract('xxxx@ffff.nec.co.jp' ,'(?<=@).*(?=\\.)',0);
OK
ffff.nec.co
hive>选择regexp\u提取('xxxx@gmail.com' ,'(?