Linq to sql “LINQ到SQL”;分组方式;
我想知道是否有人能帮助我。我想在VB.Net中使用LINQ复制以下SQL查询。我不太清楚如何进行子查询/聚合 谢谢Linq to sql “LINQ到SQL”;分组方式;,linq-to-sql,Linq To Sql,我想知道是否有人能帮助我。我想在VB.Net中使用LINQ复制以下SQL查询。我不太清楚如何进行子查询/聚合 谢谢 SELECT * FROM Server S INNER JOIN ServerHDD H ON S.Server_ID = H.Server_ID INNER JOIN (SELECT MAX(ServerHDD_ID) AS ServerHDD_ID FROM
SELECT *
FROM Server S
INNER JOIN ServerHDD H
ON S.Server_ID = H.Server_ID
INNER JOIN (SELECT MAX(ServerHDD_ID) AS ServerHDD_ID
FROM ServerHDD
GROUP BY Server_ID, Letter) Filter
ON H.ServerHDD_ID = Filter.ServerHDD_ID
ORDER BY S.Hostname, H.Letter
在C#=>中获得如下信息,需要VB.Net转换,请
from S in SERVER
join H in SERVERHDD on S.Server_ID equals H.Server_ID
join FILTER in
(from s in SERVERHDD group s
by new {s.Server_ID, s.Letter}
into groupedServerHDD select new
{
SERVERHDD_ID = groupedServer.Sum(gS=>gS.ServerHDD_ID)
}
)
on H.ServerHDD_ID equals FILTER.SERVERHDD_ID
orderby S.Hostname, H.Letter
select S
有一些LINQ学习工具非常酷 这是我最喜欢的。但你也可能想退房
您应该能够将代码粘贴到其中一个应用程序中,它将向您显示其转换方式。希望它们能派上用场。:)这是我最喜欢的关于这个话题的页面。我喜欢LINQtoSQL(希望他们打算通过实体框架继续支持它…)。在本页中,您将找到您的查询需求的所有答案。如果没有可以测试的东西,很难在这里格式化查询 您的内部联接使用了LtS的简单联接语法。您可以在内部select上说.Max(),也可以这样说Max(此处为伪functoid):
From p2 In g _
Where p2.UnitPrice = g.Max(Function(p3) p3.UnitPrice) _
Select p2