【问题标题】:Converting a GroupBy / Having SQL query to Linq or EF query将 Group By / 具有 SQL 查询转换为 Linq 或 EF 查询
【发布时间】:2016-11-25 06:28:50
【问题描述】:

我有以下查询:

SELECT planet_id 
FROM tags 
WHERE name IN ('tag1', 'tag2') 
GROUP BY hardware_id 
HAVING COUNT(name) = 1;

“tag1”在哪里,“tag2”是我传递给函数的 List<string> 的项目。我想知道如何将其转换为 Entity Framework 或 Linq 查询。

【问题讨论】:

  • 查看我对您上一个问题的回答。

标签: sql entity-framework linq linq-to-sql entity-framework-6


【解决方案1】:

你可以使用Contains扩展方法:

var tags=new List<string>{"tag1", "tag2"};
var query= from t in context.Tags
           where tags.Contains(t.Name)
           group t by t.hardware_id into g
           where g.Count()==1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多