求助,这个连表分组+聚合函数查询该怎么写?原sql已验证 返回

SqlSugar
2 155
该叫什么 a 发布于1个月前
悬赏:5 飞吻

原SQL已经测试成功

select a.*,count(b.Name) as ImageCount,b.Name,b.Path from

UserInfo as a LEFT JOIN Image as b on

a.id=b.userId GROUP BY(a.Id)


现在不知这个SqlFunc.AggregateCount 函数在哪用,如果把表b中的ImageCount,Name,Path添加到a表UserInfo实体类中是就可以自动映射成UserInfo了?


var test = db.Queryable<UserInfo>().LeftJoin<Image>((a, b) => a.Id == b.UserId).Where(exp.ToExpression()).OrderBy(v => v.Id, OrderByType.Desc).GroupBy(v => v.Id).Select<UserInfo>(SqlFunc.AggregateCount<UserInfo>());


image.png

热忱回答2

  • fate sta fate sta VIP0
    1个月前

    var test = db.Queryable<UserInfo>().LeftJoin<Image>((a, b) => a.Id == b.UserId).Where(exp.ToExpression()).OrderBy(v => v.Id, OrderByType.Desc).GroupBy(v => v.Id).Select((a, b)=>new ViewUser(){

         Id=a.Id.SelectAll(),

         ImageCount=SqlFunc.AggregateCount(b.Id),

         BName=b.Name,

         Path=b.Path

    }).ToList();


    ViewUser是新建的一个类,要有user字段加中 另外3个B表字段

    0 回复
  • a a VIP0
    1个月前

    @fate sta

    0 回复