Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- DROP TABLE IF EXISTS Students;
- CREATE TABLE Students
- (
- ID VARCHAR (10),
- Name VARCHAR (50),
- LeaderID VARCHAR (50)
- )
- INSERT INTO Students (ID, Name, LeaderID) VALUES ('','Baldo','')
- INSERT INTO Students (ID, Name, LeaderID) VALUES ('','Cardo','')
- INSERT INTO Students (ID, Name, LeaderID) VALUES ('','Pedro','')
- INSERT INTO Students (ID, Name, LeaderID) VALUES ('','Luningning','')
- INSERT INTO Students (ID, Name, LeaderID) VALUES ('','Paolo','')
- INSERT INTO Students (ID, Name, LeaderID) VALUES ('','Roberto','')
- INSERT INTO Students (ID, Name, LeaderID) VALUES ('','Narciso','')
- INSERT INTO Students (ID, Name, LeaderID) VALUES ('','Jopay','')
- INSERT INTO Students (ID, Name, LeaderID) VALUES ('','Bernardo','')
- INSERT INTO Students (ID, Name, LeaderID) VALUES ('','Policarpio','')
- INSERT INTO Students (ID, Name, LeaderID) VALUES ('','Sisa','')
- INSERT INTO Students (ID, Name, LeaderID) VALUES ('','Reginaldo','')
- ;WITH CTERank (ID, Name, LeaderID, Rank) AS
- (
- SELECT ID, Name, LeaderID,0
- AS Rank
- FROM Students
- UNION ALL
- SELECT S.ID, S.Name, S.LeaderID,R.Rank+1
- FROM Students S
- INNER JOIN CTERank R
- ON S.LeaderID=R.Rank
- WHERE Rank <4
- )
- SELECT ID, Name, LeaderID, Rank
- FROM CTERank
- ORDER BY Rank;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement