The question for me is why do you want NHibernate to perform an INNER
JOIN. If you want a correct result in the general case without the not
null constraint, an outer join is required. And if you have a not null
constraint and a foreign key, a good query planner should detect the
situation and optimize the query the same way as if it would have been
an outer join in the first place.


On 10 Jul., 20:16, cremor <[email protected]> wrote:
> If it should be that way it isn't working. It's still a left outer
> join when I set the many-to-one to not-null (using 3.2.0.CR1).
>
> On 8 Jul., 23:38, Ricardo Peres <[email protected]> wrote:
>
>
>
> > The INNER JOIN or the LEFT OUTER JOIN is selected depending on which
> > the endpoint of the relation can be null (not-null="true" or not-
> > null="false" in the hbm.xml mappings).
>
> > On Jul 8, 11:45 am, cremor <[email protected]> wrote:
>
> > > Is it possible to modify a query (or the mapping) so that the call to
> > > the .Fetch() extension method of NHibernate results in a inner join in
> > > the generated SQL query?
>
> > > In HQL or QueryOver this is easy, but I couldn't find that for Linq.
>
> > > A workaround seems to be writing the join myself in the Linq query,
> > > but then all <join> elements in the entity are joined twice (very ugly
> > > and inefficient SQL).

-- 
You received this message because you are subscribed to the Google Groups 
"nhusers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/nhusers?hl=en.

Reply via email to