按两个 Sql 列中较大的一个排序

Order by bigger of two Sql columns

我有一个包含 2 列的 SqlTable,DateInsert(不可空)和 DateUpdate(可空)。

有什么办法可以用 c# linq 按两列的最新日期时间排序吗??

我正在尝试在 C# IQueryable 中使用 LINQ 进行操作,因此将查询保存到内存列表中并稍后重新排序不是一个选项,我需要一些 sqlserver 可以理解并一步完成查询的东西。

我尝试使用 query.OrderBy(x=>x.DateUpdate).ThenBy(x=>x.DateInsert) 但效果不佳...

预期结果如下例所示:

Item1: Insert: 2020-01-01 Update: null
Item2: Insert: 2019-01-01 Update: 2020-03-01
Item3: Insert: 2019-01-01 Update: 2019-05-01

Ordered Result: Item2->Item1->Item3

感谢您的帮助!

获取最大值并以此为序:

query.OrderBy(x=> x.DateUpdate>x.DateInsert?x.DateUpdate:x.DateInsert);