老尸 发表于 2015-1-16 23:10:17

ASP网页编程之DataTable中数据纪录的统计

问题是他们究竟是喜欢他们是使用软件时,速度快还是速度慢好.(当然在3秒以内).无论是他们输入资料时,查找资料时,分析资料时.数据|统计DataTable中数据纪录的统计
我们在利用SqlServer这些数据库时,能够轻松的经由过程Sum、Aver、Count等统计出相干了局,那末,在已把数据检索出来的DataSet(DataTable)中呢?出格是经由过程WebService取得了DataSet,这个时分,但是没有举措转头往修正Select语句来猎取这些统计了。那末在DataSet/DataTable中是不是能够举行统计呢?谜底是一定的。



  在MSDN中,有一篇MS保举的统计办法,就是逐行对数据举行乞降统计,这个办法,实在有即是无(也许这个办法只是针关于DataGrid求取小计用吧),由于这个办法中接纳的是DataGrid的ItemDataBind事务来对数据举行累加,同我们手动写代码统计没有甚么区分。
  
  本文先容一个复杂的办法,不必要逐笔记录举行盘算就能够轻松的取得DataTable中的纪录统计了局。这个复杂的办法就是挪用功效壮大的DataTable的函数Compute。
  
  1、挪用申明(仅以C#为例,下同):
  
  publicobjectCompute(stringstrExpression,stringstrFilter)
  
  参数:
  
  strExpression:要盘算的表达式字符串,基础上相似于SqlServer中的统计表达式
  
  strFilter:统计的过滤字符串,只要满意这个过滤前提的纪录才会被统计
  
  2、挪用举例:
  
  以下示例,假定一个产物发卖表table,形貌某阛阓中各促销员发卖的实践纪录,包括字段为:姓名(Name)、性别(Sex,0为女,1为男)、诞辰(Birthday)、发卖产物的代码(ProID)、发卖的数目(Quantity)、发卖代价(Price)。
  
  1.统计一切性别为女的发卖员的数目:
  table.Compute("Count(*)","Sex=0");
  
  2.统计一切发卖员中岁数年夜于20岁的
  table.Compute("Count(*)","Birthday<"+today);//today为明天的日期字符串
  
  3.统计发卖产物的均匀代价
  table.Compute("Aver(Price)","true");
  
  4.统计产物代码为1的产物发卖数目:
  table.Compute("Sum(Quantity)","ProID=1");
  
  5.统计一切产物的发卖总金额:
  要统计总发卖金额,因为table中不存在某项产物某个促销员发卖的金额数据,但我们能够经由过程Quantity*Price来取得。好比:
  table.Compute("Sum(Quantity*Price)","true");
  
  这里一个成绩是:DataTable的统计功效没有SqlServer强,这个统计是毛病的,由于Compute的统计不具有Sum(Quantity*Price)如许数据的功效。那怎样办呢?
  
  关于如许庞大数据的统计,我们能够在DataTable中创立一个新的字段来完成,好比Amount,同时设置该字段的Expression为Quantity*Price,如许我们就能够利用统计功效了:
  table.Compute("Sum(Amount)","true");

</p>强大的可扩展性。ASP具有强大的扩展性,可以实现与多种网络、硬件设备的连接:通过专用的通讯线路远程接入企业;通过远程拨号服务器为远程拨号客户提供服务;通过WAP为移动电话互联网客户服务。

再见西城 发表于 2015-1-19 20:42:06

Request:从字面上讲就是“请求”,因此这个是处理客户端提交的东东的,例如Resuest.Form,Request.QueryString,或者干脆Request("变量名")

再现理想 发表于 2015-1-24 16:36:07

我想问如何掌握学习节奏(先学什么再学什么)最好详细点?

深爱那片海 发表于 2015-2-2 10:52:40

ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。

透明 发表于 2015-2-7 18:04:34

Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write

莫相离 发表于 2015-2-22 20:14:18

学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:

若天明 发表于 2015-3-7 02:10:39

Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write

灵魂腐蚀 发表于 2015-3-21 00:20:32

不能只是将它停留在纸上谈兵的程度上。
页: [1]
查看完整版本: ASP网页编程之DataTable中数据纪录的统计