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

本文关键字:id 条件 查找 | 更新日期: 2023-09-27 18:15:44

我有一个表bookorder_t,其列如下Orderid, bookkid, ordersuccess。我想找到ordersuccess= 1的所有bookkids,和图书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中编写查询?

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

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

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