将SQL转换为LINQ转换为实体WHERE IN子句 [英] Convert SQL to LINQ to Entities WHERE IN clause
本文介绍了将SQL转换为LINQ转换为实体WHERE IN子句的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何将此sql语句转换为LINQ to Entities?
How can I convert this sql statetment to LINQ to Entities?
SQL语句:
Select * from Departments where DepartmentID in (Select DepartmentID from Employees where FirstName like '%FirstName%' or LastName like '%LastName%')
我所拥有的只是WHERE =(equals),我不能执行WHERE IN子句
All I have is WHERE =(equals) , I can't do the WHERE IN clause
LINQ到实体:
from t in db.Departments
where
t.DepartmentID == -->Should be IN not EQUALS
((from t0 in db.Employees
where
t0.FirstName.Contains("FirstName") ||
t0.LastName.Contains("LastName")
select new {
t0.DepartmentID
}).FirstOrDefault().DepartmentID)
select t
推荐答案
(from d in db.Departments
join e in db.Employees
on d.DepartmentID equals e.DepartmentID
where e.FirstName.Contains("FirstName") ||
e.LastName.Contains("LastName")
select t).Distinct()
这篇关于将SQL转换为LINQ转换为实体WHERE IN子句的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文