【问题标题】:Match email domain @xxxx.com of two columns from different tables匹配来自不同表的两列的电子邮件域@xxxx.com
【发布时间】:2020-01-17 16:43:10
【问题描述】:

我有两张包含客户信息的表格,但即使它们是同一家公司,它们的名称也不同,因为其中一张表格是手动创建的,涉及错误。

因此,当尝试匹配它时,最好的方法是匹配两个表中客户的电子邮件域。你能帮我为它创建 SQL 查询吗?

假设表 1 是:

company                 email
Nike                    john@nike.com
Yahoo                   carlos@yahoo.com
....(many others)       ....(many others)   

而表 2 是:

company                 email
Nike  Inc.              lucas@nike.com
Yahoo France            mike@yahoo.com
....(many others)       ....(many others)  

恳请您帮助构建一个查询,该查询将返回两个表中匹配的公司,因为它们在电子邮件中具有相同的域。

喜欢:

Companies_from_table_1     Companies_from_table_2     
Nike                       Nike Inc
Yahoo                      Yahoo france
Etc.                       Etc.

PS:这是针对 Oracle SQL 的

【问题讨论】:

    标签: sql oracle-sqldeveloper


    【解决方案1】:
    SELECT t1.company Companies_from_table_1, 
           t2.company Companies_from_table_2
    FROM table_1 t1
    JOIN table_2 t2 ON REGEXP_SUBSTR(t1.email, '@.+') = REGEXP_SUBSTR(t2.email, '@.+')
    

    ORDER BY tX.company 通过存储推荐的规范名称的表。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-16
    • 2018-11-09
    • 2016-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多