【发布时间】:2016-05-18 01:49:01
【问题描述】:
我有一个主表,我打算在 LINQ 中使用左连接。
不幸的是,左连接乘以结果(我只需要一个前 1 个结果)。
问题来了:我的查询应该符合 SQL 8 标准。
所以当我使用以下查询时:
var query = from user in context.User
join group in context.Groups on user.ID equals group.GroupID into groupJoin
from subGroup in groupJoin.Take(1).DefaultIfEmpty()
select new
{
Name = user.Name,
GroupName = subGroup!=null ? subGroup.Name : null
};
我得到了这个例外:
此查询的执行需要 APPLY 运算符,这不是 在 SQL Server 2005 之前的 SQL Server 版本中受支持。
如何替换我的查询以符合 SQL8?
【问题讨论】:
-
LINQ 太宽泛了。请提供适当的标签和信息 - 例如。实体框架、版本等