If you are only going one level deep then a join to an aliased self would work. If you want to go N levels deep then you would want to use a nested loop.
To self join it would look like:
SELECT * from yourTable LEFT OUTER JOIN yourTable AS selfJoinedChildren ON yourTable.ID = selfJoinedChildren.ParentID