[英]Need help in converting SQL query to LINQ
我是LINQ世界的新手,因此我坚持将一个SQL查询转换为LINQ。 我的SQL查询是:
select COUNT(DISTINCT PAYER) as count,
PPD_COL FROM BL_REV
where BL_NO_UID = 1084
GROUP BY PPD_COL
所需的输出是:
Count PPD_COL
12 P
20 C
我在LINQ中写了类似下面的内容:
var PayerCount = from a in LstBlRev where a.DelFlg == "N"
group a by new { a.PpdCol} into grouping
select new
{
Count = grouping.First().PayerCustCode.Distinct().Count(),
PPdCol = (grouping.Key.PpdCol == "P") ? "Prepaid" : "Collect"
};
但它没有给我所需的输出。 对于PPD_COL
值P&C,计数返回相同。我在这里缺少什么?
更改groupby
如下。 中group
组只有财产需要,然后在THR by
只是你正在通过分组一个属性-无需创建一个匿名对象。
var PayerCount = from a in LstBlRev
where a.DelFlg == "N"
group a.PayerCustCode by a.PpdCol into grouping
select new
{
Count = grouping.Distinct().Count(),
PPdCol = grouping.Key == "P" ? "Prepaid" : "Collect"
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.