使用条件查找不同的列ID和列数

时间:2015-10-03 08:56:30

标签: c# asp.net asp.net-mvc linq linq-to-sql

我有一个表bookorder_t,其列如下 orderid,bookid,ordersuccess。我想找到ordersuccess = 1的所有bookids, 和书籍ID的数量。

假设这是我的bookorder_t

orderid bookid  ordersuccess
----------------------------
100      1         1
101      1         null
102      1         1
103      2         1
104      2         1
106      1         1

我的预期结果是

bookid count
1       3
2       2

如何在linq中编写查询?

1 个答案:

答案 0 :(得分:1)

这应该会给你正确的结果: -

var result = db.bookorder_t.Where(x => x.ordersuccess == 1)
                           .GroupBy(x => x.bookid)
                           .Select(x => new 
                                      {
                                           bookid  = x.Key,
                                           count = x.Count()
                                      });