sql to linq的写法,数据库为mysql,开发语言c#

im_yh 2018-07-20 10:23:37
select a.ID,A.NAME, w.online,w.offline,w.sum2  from schools a
LEFT JOIN
(SELECT school_id,
sum(if (work_status = 1,1,0)) AS online,
sum(if (work_status = 2,1,0)) AS offline,
count( work_status ) AS sum2
FROM devices
GROUP BY school_id) w on a.id = w.school_id
where a.name like '%北京%';
...全文
452 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
threenewbee 2018-07-21
  • 打赏
  • 举报
回复
where x.name.Contains("北京");
->
where r.name.Contains("北京");
threenewbee 2018-07-21
  • 打赏
  • 举报
回复
from r in (from a in schools
join w in devices.GroupBy(x => x.school_id).Selext(x => {
school_id = x.Key,
online = x.Where(y => y.work_status== "1,1,0").Sum(y => y.work_status), //这里没看懂,不一定对,什么1,1,0
offline = x.Where(y => y.work_status== "2,1,0").Sum(y => y.work_status),
sum2 = x.Count() })
on a.id equals w.school_id
select new { a.ID,A.NAME, w.online,w.offline,w.sum2 })
where x.name.Contains("北京");
圣殿骑士18 2018-07-20
  • 打赏
  • 举报
回复
这个复杂度的sql,不建议用linq写。写出linq会很复杂难读,而且最终翻译的sql不如原始sql简洁,执行的效率也不高。
丰云 2018-07-20
  • 打赏
  • 举报
回复
到底想说什么????????

问个问题,搞得人莫名其妙的。。。。。

8,497

社区成员

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

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