gpt4 book ai didi

c# - 如何从linq中的多个日期列中获取最小值?

转载 作者:太空狗 更新时间:2023-10-30 01:14:25 26 4
gpt4 key购买 nike

我在一个表中有 3 个日期类型的列,我想使用 linq 从所有列中只获取一个最小日期。

表格:收集分阶段处理
1/20/2017 2/19/2017 3/17/2016
2017/4/21 2014/6/18 2015/12/15

所需结果:6/18/2014

目前我正在使用以下代码:

var collectedDate = queryResults.Min(d => d.Collected);
var stagedDate = queryResults.Min(d => d.Staged);
var ProcessedDate = queryResults.Min(d => d.Processed);

然后比较这三个并将最小日期存储在另一个变量中。我怎样才能以其他好的方式做到这一点?

最佳答案

当您使用数据库时,最好进行一次查询而不是三次查询:

var answer = (from item in queryResults
group item by 0 into sub
select new
{
min1 = sub.Min(x => x.Collected),
min2 = sub.Min(x => x.Staged),
min3 = sub.Min(x => x.Processed)
}).ToList().Select(x => new[] { x.min1, x.min2, x.min3 }.Min()).FirstOrDefault();

关于c# - 如何从linq中的多个日期列中获取最小值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43730811/

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