DataTable.Compute中如何统计某月的数据?

真心若骄阳 2014-09-25 05:27:03
我要在.net2.0中开发,不知能否在DataTable.Compute中如何统计某月的数据?

还请各位老鸟不吝赐教!
...全文
162 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
YangYun 2014-09-26
  • 打赏
  • 举报
回复
table.Compute("Sum(Total)", "sDate>'2014-1-1 and sDate<'2014-12-31'"); 这样就要以实现你的要求。
  • 打赏
  • 举报
回复
datatable用得已经很少了 DataColumn.Expression 里面能用类似SQL的聚合函数 http://msdn.microsoft.com/zh-cn/library/system.data.datacolumn.expression(VS.80).aspx 另外还有Filter和Select方法,datatable也可以用linq操作
真心若骄阳 2014-09-26
  • 打赏
  • 举报
回复
引用 9 楼 diaodiaop 的回复:
最简单的 直接在SQL查询好 在返回 否则就linq 否则就循环自己累加..
你说得对,这样的确能解决问题。我是想找到有没有更简洁高效的方法
by_封爱 版主 2014-09-26
  • 打赏
  • 举报
回复
最简单的 直接在SQL查询好 在返回 否则就linq 否则就循环自己累加..
真心若骄阳 2014-09-26
  • 打赏
  • 举报
回复
感谢版主happy09li的回复! 其实用1、2楼的方法是可以达到目标的。但我想了解的是,有没有更简单的方法完成按月分组或查询某月数据。
真心若骄阳 2014-09-26
  • 打赏
  • 举报
回复
KJ_Wang的方法,是想提醒我看compute的语法么?这我已经初步了解了,主要是filter语句能否进行月、年分组等不清楚。 版主guwei4037的示例我也看了,也是基本的语法知道,但不了解时段的分组有没有更好的方法。 另外,因为我写的这个工具,是要求必须在.net2.0环境中运行,所以Linq就用不成了。
KJ_Wang 2014-09-25
  • 打赏
  • 举报
回复
选择Compute,点击此方法的右键,弹出菜单选择定义,这样就出来了,看方法怎么定义,然后按其规则处理,应该可以!
真心若骄阳 2014-09-25
  • 打赏
  • 举报
回复
感谢楼上二位的热心! 文档中只有colDate > 1/1/99 AND colDate < 17/1/99这样计算日期范围的,请问有没有方法可以直接按年、月分组的方法?
  • 打赏
  • 举报
回复
http://msdn.microsoft.com/zh-cn/library/system.data.datatable.compute(v=vs.110).aspx
xdashewan 2014-09-25
  • 打赏
  • 举报
回复
可以用,专门为了版本查了下msdn http://msdn.microsoft.com/zh-cn/library/system.data.datatable.compute(v=vs.80).aspx

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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