使用以下linq代码,如何将dense_rank添加到我的结果中?如果这太慢或太复杂,那么仅使用排名窗口函数怎么样?
var x = tableQueryable
.Where(where condition)
.GroupBy(cust=> new { fieldOne = cust.fieldOne ?? string.Empty, fieldTwo = cust.fieldTwo ?? string.Empty})
.Where(g=>g.Count()>1)
.ToList()
.SelectMany(g => g.Select(cust => new {
cust.fieldOne
, cust.fieldTwo
, cust.fieldThree
}));
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 linq - c# 选择不在组中的多个列。
使用 linq,我尝试按 ISNULL(fieldOne,''),ISNULL(fieldTo,'') 分组,然后为每个组选择 field_One、field_Two、field_Three。因此,对于 group by 将返回的每一行,我想看到许多行。
到目前为止,我有以下内容,但似乎无法选择所有需要的列。
var xy = tableQueryable.Where(
!string.IsNullOrEmpty(cust.field_One)
|| ! string.IsNullOrEmpty(ust.field_Two)
).GroupBy(cust=> new { field_One= cust.field_One ?? string.Empty, field_Tow = cust.field_Two ?? string.Empty}).Where(g=>g.Count()>1).AsQueryable();
Run Code Online (Sandbox Code Playgroud)
有人可以帮忙吗?