У меня есть таблица профиля пользователя со столбцами User Name
, Manager
и многими другими полями, например, Amount
.
Пример записей:
User Manager Amount
A B 100
x y 200
B C 300
M N 800
C D 500
P Q 1000
D E 1000
Япытаясь получить результат, как показано ниже:
User Manager Amount
A B 100
B C 300
C D 500
D E 1000
По сути, я просто хочу показать результаты каскадным способом, чтобы все строки выбирались до тех пор, пока не будут найдены все менеджеры в иерархии для пользователя.Может кто-нибудь помочь?
============
Обновление
Мне удалось решить проблему с помощью приведенного нижеquery:
WITH rec(c1, c2)
AS (SELECT c1, c2 FROM table WHERE c2 = 'A'
UNION ALL
SELECT table.c1, table.c2 FROM table, rec WHERE table.c2 = rec.c2)
SELECT c1, c2 FROM rec
Спасибо за помощь.Аби.