[ http://issues.apache.org/jira/browse/IBATIS-264?page=comments#action_12417112 ]
Diego Trombetta commented on IBATIS-264: ---------------------------------------- I'm facing the same problem. My use case looks like this: I need to build a tree that represents the Bill of Materials of an item. Each time that I perform an inquiry to obtain the components of the current item I need also to know if the components are "final" components (leaves of the tree) or intermedate components (nodes in the tree); therefore I need to join the table of the components with itself (!) repeating the filter clause on the same columns but using different aliases. I don't think this is a minor improvement.... Any news about it? > Include with parameter > ---------------------- > > Key: IBATIS-264 > URL: http://issues.apache.org/jira/browse/IBATIS-264 > Project: iBatis for Java > Type: Improvement > Components: SQL Maps > Versions: 2.1.7 > Reporter: Nils Winkler > Priority: Minor > > I have the following problem: I include the same SQL snippet from > multiple select statements, some of them for completely unrelated > tables. This is done because these tables contain quite a few columns > with the same names in both tables. > <sql id="inc"> > name, > value, > foo, > bar > </sql> > <select id="loadA"> > select id, > <include refid="inc" /> > from A > </select> > <select id="loadB"> > select id, > <include refid="inc" /> > from B > </select> > When including the list of columns, it would be quite handy to add a > parameter to the include, for example to set a table alias in case I > have a join between tables: > <select id="loadA"> > select a.id, b.id, > <include refid="inc" /> > from A a > inner join B b on (b.id = a.id) > where b.baz = #baz# > </select> > In the above query, "name", "value" etc are no longer unique in the > query, most of the time you end up with the wrong values. > It would be great if I would be able to pass in a parameter to the > include, e.g.: > <select id="loadA"> > select a.id, b.id, > <include refid="inc" param="a."/> > from A a > inner join B b on (b.id = a.id) > where b.baz = #baz# > </select> > so I could have the SQL snippet defined like this: > <sql id="inc"> > $param$name, > $param$value, > $param$foo, > $param$bar > </sql> > This way, all of the statements would still work and I could make sure > that the correct columns are used in each case. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira