Recursivamente, encontre todos os ancestrais dados à criança

Dado um id filho, preciso retornar uma consulta contendo todos os pais desse filho, assim como seus pais, até chegar ao pai raiz. Por exemplo, dados esses dados:

ID / Parent ID
1  /  0
2  /  1
3  /  2
4  /  0
5  /  3

Então, se eu passei na ID 5, gostaria de obter uma consulta com os resultados:

ID / Parent ID
1  /  0
2  /  1
3  /  2

Esta tabela não funciona com um tipo hierarchyid, então eu suspeito que isso precisa ser feito com um CTE, mas não tenho idéia de como. Se isso pode ser feito em uma consulta SQL / proc, qualquer ajuda seria apreciada.

obrigado