C#中的SQL查询(Linq)

我在我的C#文件中有这个查询,它工作正常:from var in db.database_1 where var.database_2.primarycat.Length 0 var.meditype.Contains(All) xxx select new XElement(id, new XElemen...

我在我的C#文件中有这个查询,它工作正常:

from var in db.database_1 
where var.database_2.primarycat.Length > 0 && var.meditype.Contains("All")   
xxx               
select new XElement("id", new XElement("temp", var.database_2.name)

现在,我想在xxx的where参数中插入此查询:

AND name IN (
SELECT primarycat
from database_2
GROUP BY primarycat
HAVING COUNT(*) > 1)

有人能帮助我吗?

解决方法:

一个简单的子查询应该这样做:

from var in db.database_1 
where var.database_2.primarycat.Length > 0
    && var.meditype.Contains("All")   
    && (from cat in db.database_2
        group cat by cat.primarycat into g
        where g.Count() > 1
        select g.Key).Contains(var.name)
select new XElement("id", new XElement("temp", var.database_2.name)

本文标题为:C#中的SQL查询(Linq)

基础教程推荐