Linq to Entities - where 语句中的子查询

发布于 2024-10-11 18:27:29 字数 252 浏览 3 评论 0原文

这一定很简单,但我已经搜索了两个小时,但找不到答案。如何在 Linq to Entities 中编写此内容:

SELECT Reg4, Reg5, Reg6
FROM dbo.Table1
WHERE Reg1 = 15
AND Reg2 = ( SELECT MAX(Reg2) FROM dbo.Table2 WHERE Reg1 = 15);

是否可以在查询表达式和基于方法的语法中同时执行此操作?
塔克斯

This must be simple, but I've been searching for 2 hours, and can't find an answer. How do I write this in Linq to Entities:

SELECT Reg4, Reg5, Reg6
FROM dbo.Table1
WHERE Reg1 = 15
AND Reg2 = ( SELECT MAX(Reg2) FROM dbo.Table2 WHERE Reg1 = 15);

Is it possible to do it both in query expressions and method based syntaxes?
Tks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

红玫瑰 2024-10-18 18:27:29
var r1 = 15;
var q = from t in Context.Table1
        where t.Reg1 == r1 && 
              t.Reg2 == Context.Table2
                               .Where(t2 => t2.Reg1 == r1)
                               .Max(t2 => t2.Reg2)
        select t;

如果您有从 Table1 到 Table2 的导航/关联,那就更容易了。但你没有表现出这一点,所以我也不会......

var r1 = 15;
var q = from t in Context.Table1
        where t.Reg1 == r1 && 
              t.Reg2 == Context.Table2
                               .Where(t2 => t2.Reg1 == r1)
                               .Max(t2 => t2.Reg2)
        select t;

Easier still if you have a navigation/association from Table1 to Table2. But you didn't show that, so neither will I....

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文