DataObjects-NET / dataobjects-net

https://dataobjects.net
MIT License
60 stars 23 forks source link

Fix wrong type of JOIN for reference joint #382

Closed alex-kulakov closed 3 months ago

alex-kulakov commented 3 months ago

Sometimes INNER JOIN was wrongly chosen in cases when LEFT JOIN should be used.

An example of query looks like

Query.All<TestEntity>()
    .Select(e => new { e.List.FirstOrDefault().Link.String, e.List.FirstOrDefault().Link.Id })
    .Count();

in such cases .FirstOfDefault() may produce null value so joining Link reference should use LEFT JOIN, not INNER JOIN