首页 > 解决方案 > 具有 Max 和 group by 的实体框架 Oracle 数据库子查询

问题描述

您好,任何人都可以在这个关于实体框架的问题上提供帮助我有以下查询

select * from table_1 WHERE id in 
      (select max(id) as id from table_1 WHERE name <= :name
 and schoolId= :schoolId and when= :when GROUP BY numberofstudents ) and active <> 'D'";

我有很多选项可以使用,比如我可以制作 SP 并将其称为实体框架将处理我可以在数据库中使用 sql 选项的类型。

但如果可能的话,我需要用 linq 来做,

我不能在这里发布真实的例子或任何代码片段,我为此道歉。

查询与真实查询几乎相似。

我的尝试

var results = _context.table_1.Where(d =>
                         d.id == _context.table_1.Where(x =>

                                        string.Compare(x.name , name ) <= 0 &&
                                        x.schoolId == schoolId &&
                                        x.when.Equals(when)
                                        
                                        )
                                        .Max(x => x.id))
                                        .Where(y => y.ACTIvE != "D")
                                        .Select(d => new DTO
                                         {
                                             //set of paramters for DTO 
                                         }).ToList();

标签: c#.netoracleentity-frameworkentity-framework-6

解决方案


推荐阅读