gpt4 book ai didi

c# - LINQ 连接表然后按主表分组

转载 作者:太空宇宙 更新时间:2023-11-03 11:47:11 25 4
gpt4 key购买 nike

我正在尝试输出 IDNums + Name + Max(TimeOut-TimeIn) 的表格。我只想要每个 ID 的最大时间更改值,因为每个 ID 有多个时间条目。到目前为止我有。但是,与 ID 关联的名称位于单独的表中。这是我尝试过的:

from IO_Time in db.IO_Times
join NameTable in db.NamesTable on IO_Time.IDNum equals NameTable.IDNum
orderby SqlMethods.DateDiffMinute(IO_Time.TimeIn, IO_Time.TimeOut) descending
group IO_Time by IO_Time.IDNum into list
select new
{
ID = list.Key,
Name = NameTable.Name
Time = list.Max(t=> t.TimeOut-t.TimeIn)

});

当然,NameTable.Name 在该上下文中不存在。我该如何解决这个问题?

最佳答案

认为这应该可行...基本上它是在更改组 key 以包括名称...这应该没问题,因为您已经有了连接。

from IO_Time in db.IO_Times
join NameTable in db.NamesTable on IO_Time.IDNum equals NameTable.IDNum
orderby SqlMethods.DateDiffMinute(IO_Time.TimeIn, IO_Time.TimeOut) descending
group IO_Time by new { IO_Time.IDNum, NameTable.Name } into list
select new
{
ID = list.Key.IDNum,
Name = list.Key.Name
Time = list.Max(t=> t.TimeOut-t.TimeIn)
});

关于c# - LINQ 连接表然后按主表分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3120516/

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