Oracle数据库中什么是自连接
这篇文章将为大家详细讲解有关Oracle数据库中什么是自连接,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
自连接是对同一个表进行的连接。要自行一个自连接,必须使用不同的表别名来标识在查询中每次对表的引用。现在考虑一个例子:store模式包含了一个名为employees的表,其中保存了员工的信息。如果员工有管理者,那么manager_id列包含了员工的管理者的employee_id。employee_id表包含如下的行:
可以看到CEOJames Smith的manager_id列为空,这是说他没有管理者(只对股东负责)。Fred Hobbs和Susan Jones都为Ron Johnson工作。
可以使用一个自连接来显示每个员工及其管理者的名字,在下面的例子中,employee表被引用了两次,分别使用了两个别名:w和m。别名w用于获得员工的名字,而别名m用于获得管理者的名字,自连接是对w.manager_id和m.employee_id进行的:
SELECT w.first_namell' ' ll w.last_name II'work for'llm.first_namell' 'llm.last_name
FROM employees w, employees m
WHERE w.manager_id= w. employee_id;
W.FIRST_NAMEl I‘ ’ l IW.LAST_NAME I l ‘WORKSFOR' I IM.FIRST_NA
---------------------------------------------------------------------------
Ron Johnson works forJames Smith
Fred Hobbs works for Ron Johnson
Susan Jones works forRon Johnson
由于James Smith的manager_id列为空,因此不会为他显示任何行。
关于Oracle数据库中什么是自连接就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。