创建一个不止一次查询表中数据的查询

时间:2011-12-08 12:41:41

标签: sql ms-access

我有一份客户个人详细信息数据表:

ID
name
addressID
referralID

部分数据是'referralID'。如果某些条目已由数据库中的其他客户端引用,则将填写此条目。因此,referralID将匹配数据库中的ID。

我正在尝试创建一个查询,该查询将返回引荐人的详细信息以及他们提到的人员姓名,例如:

Referrals ID (Where referallID = ID), 
Referrals name (name), 
ID of client referred (ID), 
Name of Client referred (name)

由于查询需要以某种方式引用自身,我在如何处理此问题以及采用何种方法方面遇到困难?我如何从表中提取两次细节?

希望这对人们来说很容易理解。任何帮助或指导将非常感谢,欢呼

2 个答案:

答案 0 :(得分:4)

MyTable替换为您的表名,并使用别名加入同一个表:

SELECT 
     m.ID, 
     m.Name, 
     m.AddressID, 
     m2.name as ReferralName 
FROM 
     MyTable m
INNER JOIN 
     MyTable m2 
ON m2.ReferralID = m.ID

答案 1 :(得分:0)

假设您想要一个包含所有客户及其所引荐人员的列表,并且该客户端是表名,并且该ID = ReferallID ......

Select * from client c1
LEFT join client c2 on C1.ID = C2.ReferallID