如何编写递归CTE或等效方法以完成以获得员工和经理之间的关系层次结构

时间:2018-08-05 06:24:49

标签: sql hadoop hive

我想编写HIVE查询以获取员工和经理之间的关系层次结构。 下面是我的架构。

CREATE TABLE  tbEmployee
(
    EmployeeId   INT PRIMARY KEY,
    EmployeeName VARCHAR(50),
    ManagerId    INT
)

使用以下插入查询在表中输入一些虚拟数据:

INSERT tbEmployee 
VALUES (25, 'Salman', NULL),
       (26, 'Ranbeer', 25),
       (27, 'Hrithik', 25),
       (28, 'Aamir', 27),
       (29, 'Shahid', 28),
       (30, 'Sidharth', NULL),
       (31, 'Varun', 30),
       (32, 'Kabeer', 30),
       (33, 'Raj', 29); 

如果我通过Raj(EmployeeId=33),那么我的输出应该是

EmployeeId      Manager id
---------------------------
33               29
29               28
28               27
27               25
25               NULL

如何在HIVE中实现类似的逻辑?请帮忙。

0 个答案:

没有答案