I need to be able to use union/union all/except from NHibernate and I've been trying to see what it would take to support this in NHibernate. So far I've made a proof-of-concept (at https://github.com/dmitryvk/nhibernate-core/commit/869443d861232b8c15f150c7e597e5bcc7ca7863) which seems to support some basic trivial cases (which are added to tests).
Basically, what I do is the following: 1) HQL parser allows UNION at the top-level, yielding AST such as the following (using s-expression notation): (UNION (QUERY ...) (QUERY ...)) 2) HqlSqlWalker and SqlGenerator also allow UNION at the top-level 3) New HQL AST node is added for UNION I'd like to have this code reviewed and receive some feedback about this proof-of-concept implementation. What's missing in it? Am I in the right direction? Is there a documentation for how NHibernate generates SQL query (I'm having trouble navigating around HqlSqlWalker.ProcessQuery(), FormClauses, FormElements and so on)? -- --- You received this message because you are subscribed to the Google Groups "nhibernate-development" group. To unsubscribe from this group and stop receiving emails from it, send an email to nhibernate-development+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.