[
http://opensource.atlassian.com/projects/hibernate/browse/HHH-2308?page=c...
]
Adam Ringel commented on HHH-2308:
----------------------------------
Are there any plans to implement the new createAlias method with the extraJoinClauses
parameter in an official release? This is a highly valuable addition to the Criteria
API.
I have used the Filter work around but I find it rather clunky. Plus I don't want to
have a filter enabled in a session when it is possible that another query in that session
could be invoked that doesn't want that filter!! I tried doing a disable followed by
a session flush but it didn't seem to work:
crit.list();
//doesn't work, have to live with filter being live in this session
session.flush();
session.disableFilter("ackFilter");
Adjusting the Outer Join Predicate using Criteria Query
-------------------------------------------------------
Key: HHH-2308
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HHH-2308
Project: Hibernate Core
Issue Type: New Feature
Components: query-criteria
Affects Versions: 3.2.1
Environment: Linux Using MS SQLServer
Reporter: Ben Grant
Attachments: hibernate-3.3.2.GA-createAlias_withClause.patch,
hibernate-3.3.2.GA-createAlias_withClause.zip, hibernate-joinOn-sorted.ZIP,
hibernate-joinOn.ZIP
I have two tables
Table A
||Col_1||Col_2||
|London| UK |
|Liverpool| UK |
| New York | USA |
Table B
||Col_1||Col_2|| Col_3||
| UK | Europe | 0
| USA | Americas | 1
Using the Criteria class, Restriction Class and FetchMode, Hibernate manages to create a
query that looks like this
select distinct top 2000
this_.Col_1 as y0_, TableB3_.Col2 as y1_
from TableA this_
left outer join TableB TableB3_ on this_.Col_2= TableB3_.Col_1
where TableB3_.Col_3=1
When really i need the query to be like this
select distinct top 2000
this_.Col_1 as y0_, TableB3_.Col2 as y1_
from TableA this_
left outer join TableB TableB3_ on this_.Col_2= TableB3_.Col_1 AND TableB3_.Col_3=1
currently their isn't any know way for hibernate to adjust or apply filters within
the join clause.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira