在同一表中查找值并在值相等时限制结果

时间:2019-04-19 04:05:22

标签: sql oracle

我有一张客户表,我需要针对该作业建立查询。 引荐人列包含从同一表格引荐客户的客户的客户编号。

我遇到的问题的两个部分是:

1)我需要显示可在同一表中找到的客户编号,客户姓氏,客户城市,客户邮政编码以及推荐客户的客户邮政编码。

2)我需要将结果限制为姓氏相同的客户推荐的客户

表结构

CUSTOMERS
(customer#, lastname, firstname, email, address, city, state, zip, referredby, region)

这是我到目前为止所得到的

SELECT customer#, lastname, city, zip "Customer ZIP", referred "Referrer ZIP"
FROM CUSTOMERS
WHERE referred IS NOT NULL;

1 个答案:

答案 0 :(得分:0)

您可以在此处查看“内部联接”以了解更多信息:https://www.w3resource.com/oracle/joins/oracle-inner-join.php

尝试一下:

SELECT a.customer#, a.lastname, a.city, a.zip "Customer ZIP", b.zip "Referrer ZIP"
FROM 
CUSTOMERS a
INNER JOIN
CUSTOMERS b
ON
a.customer# = b.referredby
AND
a.lastname = b.lastname;