查询自引用表

时间:2012-11-28 06:54:52

标签: database postgresql join view

假设我有这个简单的表

UserID|Name  |Aid ID
  1   |Bob   | 3
  2   |Alice | 1
  3   |Ted   | 4
  4   |Sam   | 2

在查询中,我必须列出此人的姓名以及他们帮助的人的姓名。我想过做一个View,但我觉得这可以通过一个简单的查询来完成而不是创建一个视图。我将如何做到这一点,以及查询如何正确运行,如它背后的基本原理?

2 个答案:

答案 0 :(得分:1)

您需要将表格加入自身

SELECT  a."UserID",
        a."Name",
        b."Name" As AIDName
FROM    tableName a
        INNER JOIN tableName b
            ON a."AidID" = b."UserID"

答案 1 :(得分:1)

查询将是

select persons.name,aid.name 
from your_tablename as persons,
     your_tablename as aid
where persons.aidid=aid.userID