gpt4 book ai didi

entity-framework - 在 LINQ 中使用带有 MAX 函数的子查询

转载 作者:行者123 更新时间:2023-12-04 07:27:01 24 4
gpt4 key购买 nike

我是 Entity Framework 的新手,所以在将纯 SQL 语句转换为 LINQ 时遇到了很多问题。以下示例是我必须做的很多事情,但我似乎无法找到解决方案......

SQL语句:

SELECT * 
FROM MyTable Table1
WHERE Table1.Column1 = 1
AND Table1.Column2 = 2
AND Table1.SequenceNr = (SELECT MAX(Table2.SequenceNr)
FROM MyTable Table2
WHERE Table2.Column1 = 1
AND Table2.Column2 = 2)

==> 我有一个表(不是我的 :-)),其中包含 3 个要链接的重要列:2 个数字和一个序列号(以保留某种历史记录)。==> 我主要需要序列号最高的记录(“最后一个”),我用上面的查询解决了它。

但是我如何在 Linq (VB) 中执行此操作?我已经有了这样的东西:

Dim blah = (From oTmp In oDB.MyTable
Where oTmp.Column1 = 1 And _
oTmp.Column2 = 2 And _
oTmp.SequenceNr = oDB.MyTable.Max(Function(x) x.SequenceNr)
Select oTmp).ToList

有人有什么想法吗? :)

您好,吉姆

最佳答案

您只需向该内部查询添加一个 Where() 调用:

oTmp.SequenceNr = oDB.MyTable.Where(Function(x) x.Column1 = 1 And x.Column2 =2)
.Max(Function(x) x.SequenceNr)

关于entity-framework - 在 LINQ 中使用带有 MAX 函数的子查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13362249/

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