SQl用linq 如何用linq 的语法写出来呀

c___s__d_n 2013-11-05 10:03:36
select Ent_ID,SDate,Count(distinct(callcode)) as CallIn_TRS_Suc
from HD201311 where SDate='20131104' and STime>='140000' and ETIME<='145959' and CallType=2 and Len(Called)>5 and TotalLen>0
group by Ent_id,SDate

select Ent_ID,SDate,Sum(TotalLen) as CallIn_Len
from HD201311 where SDate='20131104' and STime>='140000' and ETIME<='145959' and CallType=2 and Len(Called)>5 and TotalLen>0
group by Ent_id,SDate

SQl如何用linq 的语法写出来呀
...全文
202 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
q107770540 2013-11-05
  • 打赏
  • 举报
回复
不谢,凡事先动手尝试后再问,会学到更多
c___s__d_n 2013-11-05
  • 打赏
  • 举报
回复
谢谢,,,大哥
q107770540 2013-11-05
  • 打赏
  • 举报
回复
var  query = from data in ds.Tables[0].AsEnumerable()
                         where data.Field<int>("CallType") == 2
                         group data by new { t1 = data.Field<int>("Ent_ID"), t2 = data.Field<string>("SDate") } into m
                         select new
                         {
                             
                             Ent_ID = m.Key.t1,
                             SDate = m.Key.t2,
                             CallAll = m.Select(x=>x.Field<string>("callcode")).Distintct().Count()   
                         };
  • 打赏
  • 举报
回复
LINQ分为两种; LINQ to sql,懂么/ 你现在ds.Tables[0].AsEnumerable()这个是LINQ to DataSet
c___s__d_n 2013-11-05
  • 打赏
  • 举报
回复
var query = from data in ds.Tables[0].AsEnumerable() where data.Field<int>("CallType") == 2 group data by new { t1 = data.Field<int>("Ent_ID"), t2 = data.Field<string>("SDate") } into m select new { Ent_ID = m.Key.t1, SDate = m.Key.t2, CallIn_TRS_Suc= m.Select(x => x.Field<string>("CallCode")).Distinct() }; 是不是这种写法。。
c___s__d_n 2013-11-05
  • 打赏
  • 举报
回复
引用 5 楼 shiyong7682719 的回复:
例子:
var q =      from p in db.Products      group p by p.CategoryID into g     select new {         g.Key,          NumProducts = g.Count()     }; 
首先谢谢这位大哥,,你这一步我实现了,但不是所要的结果。。
  • 打赏
  • 举报
回复
你的这种就是 CallIn_TRS_Suc= g.Count(p => p.callcode)
  • 打赏
  • 举报
回复
例子:
var q =      from p in db.Products      group p by p.CategoryID into g     select new {         g.Key,          NumProducts = g.Count()     }; 
c___s__d_n 2013-11-05
  • 打赏
  • 举报
回复
引用 3 楼 c___s__d_n 的回复:
[quote=引用 1 楼 q107770540 的回复:] 看了一下你的SQL语句,只是些简单的group by + 统计 而已 建议你先自己写一下,有什么问题再上来提问 http://code.msdn.microsoft.com/101-LINQ-Samples-3fb9811b
还有就是在 count() 这个函数中加distinct 不会。。。。谢谢帮助。。[/quote] 因为我是先把数据取出放入内存中,再用linq去过滤的。。。
c___s__d_n 2013-11-05
  • 打赏
  • 举报
回复
引用 1 楼 q107770540 的回复:
看了一下你的SQL语句,只是些简单的group by + 统计 而已 建议你先自己写一下,有什么问题再上来提问 http://code.msdn.microsoft.com/101-LINQ-Samples-3fb9811b
还有就是在 count() 这个函数中加distinct 不会。。。。谢谢帮助。。
c___s__d_n 2013-11-05
  • 打赏
  • 举报
回复
我还是不太会写,不好意思 var query = from data in ds.Tables[0].AsEnumerable() where data.Field<int>("CallType") == 2 group data by new { t1 = data.Field<int>("Ent_ID"), t2 = data.Field<string>("SDate") } into m select new { Ent_ID = m.Key.t1, SDate = m.Key.t2, CallAll = m.Count() //这块不会写 };
引用 1 楼 q107770540 的回复:
看了一下你的SQL语句,只是些简单的group by + 统计 而已 建议你先自己写一下,有什么问题再上来提问 http://code.msdn.microsoft.com/101-LINQ-Samples-3fb9811b
q107770540 2013-11-05
  • 打赏
  • 举报
回复
看了一下你的SQL语句,只是些简单的group by + 统计 而已 建议你先自己写一下,有什么问题再上来提问 http://code.msdn.microsoft.com/101-LINQ-Samples-3fb9811b
c___s__d_n 2013-11-05
  • 打赏
  • 举报
回复
引用 1 楼 q107770540 的回复:
看了一下你的SQL语句,只是些简单的group by + 统计 而已 建议你先自己写一下,有什么问题再上来提问 http://code.msdn.microsoft.com/101-LINQ-Samples-3fb9811b
大哥,我还有一个问题请教。。。 如别一个地址所说。。。。 http://bbs.csdn.net/topics/390633915

8,497

社区成员

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

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