小弟刚学linq一条简单的sql语句如何转为linq

xyz7885696 2012-05-09 09:50:19

SELECT c.SiteName,max(d.ScheduleTime),a.EnterpriseName,a.EnterpriseInfoID FROM EnterpriseInfo AS a
INNER JOIN EnterpriseSite AS b ON b.EnterpriseInfoID = a.EnterpriseInfoID
INNER JOIN SiteInfo AS c ON c.SiteInfoID = b.SiteInfoID
INNER JOIN ScheduleInfo AS d ON d.EnterpriseSiteID = b.EnterpriseSiteID
INNER JOIN EventType AS e ON e.EventTypeID = d.EventTypeID
GROUP BY c.SiteName,a.EnterpriseName,a.EnterpriseInfoID
...全文
139 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
xyz7885696 2012-05-11
  • 打赏
  • 举报
回复
[Quote=引用楼主 的回复:]
SQL code

SELECT c.SiteName,max(d.ScheduleTime),a.EnterpriseName,a.EnterpriseInfoID FROM EnterpriseInfo AS a
INNER JOIN EnterpriseSite AS b ON b.EnterpriseInfoID = a.EnterpriseInfoID
INNER JOIN Site……
[/Quote]
感谢 我已经自己写出来了
Hatake 2012-05-10
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

C# code

//代码手打,提供思路参考
var query=from a in EnterpriseInfo
join b in EnterpriseSite on a.EnterpriseInfoID equals b.EnterpriseInfoID
join c in SiteInfo on b.SiteInfoID equals……
[/Quote]

+ 1

楼主想要的是什么?只是转LINQ,还是要优化?
你的选择H 2012-05-09
  • 打赏
  • 举报
回复
好多inner啊
建议考虑其他办法,连接太多
q107770540 2012-05-09
  • 打赏
  • 举报
回复

//代码手打,提供思路参考
var query=from a in EnterpriseInfo
join b in EnterpriseSite on a.EnterpriseInfoID equals b.EnterpriseInfoID
join c in SiteInfo on b.SiteInfoID equals c.SiteInfoID
join d in ScheduleInfo on b.EnterpriseSiteID equals d.EnterpriseSiteID
join e in EventType on d.EventTypeID equals e.EventTypeID
group new{a,b,c,d} by new {c.SiteName,a.EnterpriseName,a.EnterpriseInfoID} into g
select new{g.Key.SiteName,ScheduleTime=g.Max(d=>ScheduleTime),g.Key.EnterpriseName,g.Key.EnterpriseInfoID};

8,494

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧