I'm not much surprised that alias isn't used (yet). It's usefulness is mostly in the parser where it helps to associate columns with their tables -- once the columns are associated with their tables, the alias' job is mostly done. This is another thing that MAY have to be developed further for self-join support. Each column of a self-joined table will typically need to be associated with a specific occurrence of the table in the query which will have to be exported to the planner either via the table(scan)'s alias or via some relationship already established in HSQL to/through range variables in some TBD extension to the voltXML tree.