linq问题

研发群187380948欢迎加入 2013-10-17 04:45:04
SELECT COUNT(a.ID),a.Name FROM a INNER JOIN b ON a.ID=b.ID
INNER JOIN c ON a.ID=c.ID GROUP BY a.ID,a.Name
这样的sql要写成linq需要怎么写呢

还有就是
var query=表.sum(a=>a.monery)这个查询结果为null要怎么处理呢
...全文
3210 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Andy__Huang 2013-10-26
  • 打赏
  • 举报
回复
实例:
public static List<ServiceVDM> GetSummaryList()
{
    using (var context = new xxxxEntities())
    {
        List<aa> alist = context.aa.ToList();
        List<bb> blist = context.bb.ToList();
        List<cc> clist = context.cc.ToList();

        var list = from a in alist
                   join b in blist on a.ID equals b.ID
                   join c in clist on a.ID equals c.ID
                   group a by a.ID into g
                   orderby g.Key
                   select new { name = g.Key, ct = g.Count() };
        return listConvertModel();
    }
}
好吧我来了 2013-10-26
  • 打赏
  • 举报
回复
var query=表.Where(x => a.monery != null).Sum(a=>a.monery??0)
  • 打赏
  • 举报
回复
引用 2 楼 caozhy 的回复:
from x in a join y in b on a.ID equals b.ID join z in c on c.ID equals a.ID group x by x.ID into g orderby g.Key select x.Name var query=表.Where(x => a.monery != null).Sum(a=>a.monery)
如何 var query=表.Where(x => a.monery != null).Sum(a=>a.monery)[/quote] 查询结果没有数据不会报错吗。
  • 打赏
  • 举报
回复
var IDs = ( from a in Article select new{ID=a.MagazineID } ).Concat( from a in Article select new{ID=a.MagazineToID } );

var result = from m in Magazine join p in IDCount on m.ID equals p.ID into lf from p in lf.DefalultIfEmpty() order m by p==null?0:p.Nums descending select new {m.ID,m.title};
q107770540 2013-10-17
  • 打赏
  • 举报
回复
引用 楼主 ITjyLh 的回复:
SELECT COUNT(a.ID),a.Name FROM a INNER JOIN b ON a.ID=b.ID INNER JOIN c ON a.ID=c.ID GROUP BY a.ID,a.Name 这样的sql要写成linq需要怎么写呢 还有就是 var query=表.sum(a=>a.monery)这个查询结果为null要怎么处理呢
var query=from s in a
          join t in b on s.ID equals t.ID
          join m in c on s.ID equals m.ID
          group s by new {s.ID,s.Name} into g
          select new {g.Key.Name,ct=g.Count()};
  • 打赏
  • 举报
回复
第一个问题还得去除重复行 id数多的排在前面实际我是看到另一个帖子的问题想起问这个的
第二个问题不是字段为空 是sum后为null 要是像你楼上哪么写sum后是不是不会为null了
threenewbee 2013-10-17
  • 打赏
  • 举报
回复
from x in a join y in b on a.ID equals b.ID join z in c on c.ID equals a.ID group x by x.ID into g orderby g.Key select x.Name var query=表.Where(x => a.monery != null).Sum(a=>a.monery)
  • 打赏
  • 举报
回复
SELECT a.Name FROM a INNER JOIN b ON a.ID=b.ID
INNER JOIN c ON a.ID=c.ID GROUP BY a.ID,a.Name order by COUNT(a.ID)

8,497

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧