gpt4 book ai didi

sql - 在将 SQL 查询转换为 LINQ 方面需要帮助

转载 作者:行者123 更新时间:2023-12-04 22:35:40 25 4
gpt4 key购买 nike

我是 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"
};

关于sql - 在将 SQL 查询转换为 LINQ 方面需要帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41996108/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com