I have a user
table ,
USER_ID IMMEDIATE_SUPERIOR_ID
432 NULL
554 432
1150 432
1442 1150
To fetch hierarchical data I wrote this query
SELECT c1.user_id as level_1, c2.user_id as level_2,
c3.user_id as level_3, c4.user_id as level_4 ,
c4.user_id as level_5 , c4.user_id as level_6
FROM `user` as c1
LEFT JOIN `user` as c2 ON c1.user_id =c2.IMMEDIATE_SUPERIOR_ID
LEFT JOIN `user` as c3 ON c2.user_id =c3.IMMEDIATE_SUPERIOR_ID
LEFT JOIN `user` as c4 ON c3.user_id =c4.IMMEDIATE_SUPERIOR_ID
LEFT JOIN `user` as c5 ON c4.user_id =c5.IMMEDIATE_SUPERIOR_ID
LEFT JOIN `user` as c6 ON c5.user_id =c6.IMMEDIATE_SUPERIOR_ID
where c1.USER_ID =432
Result :
level_1|level_2|level_3|level_4|level_5|level_6|
-------+-------+-------+-------+-------+-------+
432| 554| | | | |
432| 1150| 1442| | | |
How can I show the output like below since user 432 is the supreme manager of all these three users?
USER_ID IMMEDIATE_SUPERIOR_ID
554 432
1150 432
1442 432