0

嗨,有人可以帮我如何在 LINQ 中编写以下查询,因为我是 LINQ 新手

select * from Employee where employeeid = 'E101'
or empdept = (select dept from departments where deptid = 'D101')

提前致谢

4

1 回答 1

0

您可以使用群组加入

from e in employee
join d in deparment.Where(x => x.deptid == "D101") 
    on e.empdept equals d.dept into g
where e.employeeid == "E101" || g.Any()
select e;

生成以下 SQL

DECLARE @p0 NVarChar(1000) = 'E101'
DECLARE @p1 NVarChar(1000) = 'D101'

SELECT *
FROM [employee] AS [t0]
WHERE ([t0].[employeeid] = @p0) OR (EXISTS(
    SELECT NULL AS [EMPTY]
    FROM [deparment] AS [t1]
    WHERE ([t0].[empdept] = [t1].[dept]) AND ([t1].[deptid] = @p1)
    ))
于 2013-02-19T14:15:12.540 回答