【问题标题】:SQL Query in C# (Linq)C# (Linq) 中的 SQL 查询
【发布时间】:2013-01-09 23:17:06
【问题描述】:

我的 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)

有人可以帮帮我吗?

【问题讨论】:

    标签: c# sql linq


    【解决方案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)
    

    【讨论】:

      【解决方案2】:

      使用子选择。查看这个帖子,它的答案几乎相同。

      how to do subquery in LINQ

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-07-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-01-31
        • 1970-01-01
        • 2013-05-25
        相关资源
        最近更新 更多