I was recently asked if QueryADataset supported Common Table Expressions. After looking at the documentation and understanding the benefit it brings (like PIVOT and UNPIVOT), I decided to it was possible.
I've almost got it working. There's just 1 test case (multiple initial results and recursive queries) that I need to add support for.
I'm also looking at adding ranking functions and support for the OVER qualifier.
Should be in the next update.