linq 多表分组左连接查询查询统计
return (from merchantsInfo in base.GetIQueryable(x => x.IsLogicDelete == false && x.FID != fid) join userAccount in UserAccountDal.GetIQueryable(x => x.PrivilegeLevel > 0) on merchantsInfo.UserAccountID equals userAccount.FID join merchantsfrom in MerchantsInfoFormDAL.GetIQueryable(x => !x.IsLogicDelete) on merchantsInfo.FID equals merchantsfrom.MerchantsInfoID into data from merchants in data.DefaultIfEmpty() group new { merchants.MerchantsInfoID } by new { merchantsInfo.FID, merchantsInfo.Name, merchantsInfo.BrandLabel, merchantsInfo.MainPicture, merchantsInfo.MerchantsAmountMax, merchantsInfo.MerchantsAmountMin, merchantsInfo.MerchantsAmountType, merchantsInfo.ProjectName, merchantsInfo.BelongIndustry, merchantsInfo.BelongIndustryChild, merchantsInfo.MerchantsArea, merchantsInfo.MerchantsAreaCity, merchantsInfo.MerchantsAreaCitySubset, merchants.MerchantsInfoID } into g select new MerchantsModel { FID = g.Key.FID, Name = g.Key.Name, BrandLabel = g.Key.BrandLabel, MainPicture = g.Key.MainPicture, MerchantsAmountMax = g.Key.MerchantsAmountMax, MerchantsAmountMin = g.Key.MerchantsAmountMin, MerchantsAmountType = g.Key.MerchantsAmountType, ProjectName = g.Key.ProjectName, BelongIndustry = g.Key.BelongIndustry, BelongIndustryChild = g.Key.BelongIndustryChild, MerchantsArea = g.Key.MerchantsArea, MerchantsAreaCity = g.Key.MerchantsAreaCity, MerchantsAreaCitySubset = g.Key.MerchantsAreaCitySubset, ApplyNum = g.Key.MerchantsInfoID == null ? 0 : g.Count() }).Take(row).ToList();
var userMapMessageIsReadListLinq = from um in sys_UserMapMessageService .GetQueryable(x => x.CreatorID == userid || x.ReceiverID == userid) group um by new { um.CreatorID, um.ReceiverID } into g select new UserMapMessageIsReadList { Id = g.Max(x => x.Id), NoReadCount = g.Count(x => !x.IsRead) };
作者:匿名
出处:https://www.cnblogs.com/chenxi001/p/12551134.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架