i dont know if this will help ya, but..
subquery1 finds everything that starts with a letter at the beginning and sorts them
subquery2 does the same but for #s
primary query performs a union on the two..??
i dont know if the pseudo code there helps at all and i'm having a hard time thinking right now. so code it up. i hope i was of some assistance.