【发布时间】:2011-06-06 14:35:05
【问题描述】:
我想将下面的查询按GetSetDomainName 分组并选择具有最大GetSetKalanGun 的行。换句话说,我试图在具有相同域名的那些中获取具有最大KALANGUN 的行。
var kayitlar3 = (
from rows in islemDetayKayitListesi
select new
{
KAYITNO = rows.GetSetKayitNo,
HESAPADI = rows.GetSetHesapAdi,
URUNNO = rows.GetSetUrunNo,
URUNADI = rows.GetSetUrunAdi,
URUNMIKTAR = rows.GetSetUrunMiktar,
ISLEMTARIHI = rows.GetSetIslemTarihi,
HIZMETDURUMU = rows.GetSetHizmetDurumu,
TOPLAMTUTAR = rows.GetSetToplamTutar,
HIZMETBASLANGICTARIHI = rows.GetSetHizmetBaslangicTarihi,
HIZMETBITISTARIHI = rows.GetSetHizmetBitisTarihi,
KALANGUN = rows.GetSetKalanGun
DOMAINNAME = rows.GetSetDomainName,
SIPARISDURUMU = rows.GetSetSiparisDurumu
}).AsQueryable();
这就是我得到的
KAYITNO DOMAINNAME KALANGUN
1 asdf.com 30
2 domnam.com 172
3 asdf.com 40
4 xyz.com 350
这就是我想要的
KAYITNO DOMAINNAME KALANGUN
2 domnam.com 172
3 asdf.com 40
4 xyz.com 350
var islemDetayKayitListesi = new List<IslemDetayKayit>();
islemDetayKayitListesi 填充一个 foreach 循环,没有问题
这就是IslemDetayKayit 的样子
public class IslemDetayKayit
{
public int GetSetKayitNo { get; set; }
public string GetSetHesapAdi { get; set; }
public string GetSetUrunNo { get; set; }
public string GetSetUrunAdi { get; set; }
public double GetSetUrunMiktar { get; set; }
public string GetSetIslemTarihi { get; set; }
public string GetSetHizmetDurumu { get; set; }
public string GetSetToplamTutar { get; set; }
public string GetSetHizmetBaslangicTarihi { get; set; }
public string GetSetHizmetBitisTarihi { get; set; }
public int GetSetKalanGun { get; set; }
public string GetSetSiparisDurumu { get; set; }
public string GetSetDomainName { get; set; }
}
编辑:我发现我的代码中还有其他问题,并进行了更正。之后我对这个问题的所有答案都有效。感谢您帮助和教我新东西.
【问题讨论】:
-
分组与否,结果行不一样吗?最大值不会改变。
-
我真的不确定@Inuyasha。
-
@BurnAfterReading:您将不得不进一步详细说明,因为您的示例输出不太有意义。是否要跳过所有行,直到达到最大行,然后输出其余行?
-
是的@sixlettervariables 这就是我想要做的。
-
@BurnAfterReading:你为什么打电话给
AsQueryable()?