靈魂-放水

          為學日益,為道日損。

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            296 Posts :: 10 Stories :: 274 Comments :: 0 Trackbacks
          最近為.NET項目編碼,為了少寫代碼,直接用DataSet,DataTable等現成微軟封裝好的組件,對于Sum()、Count()等計算,DataTable提供了配套的方法Founction Compute():




          DataTable.Compute 方法
          2007-03-22 17:53
          .
          DataTable.Compute 方法  

          計算用來傳遞篩選條件的當前行上的給定表達式。

          命名空間:System.Data
          程序集:System.Data(在 system.data.dll 中)


          Visual Basic(聲明)
          Public Function Compute ( _
                           expression As String, _
                           filter As String _
                      ) As Object
                      
          Visual Basic(用法)
          Dim instance As DataTable
                      Dim expression As String
                      Dim filter As String
                      Dim returnValue As Object
                      returnValue = instance.Compute(expression, filter)
                      
          C#
          public Object Compute (
                          string expression,
                          string filter
                      )
                      
          C++
          public:
                      Object^ Compute (
                           String^ expression,
                           String^ filter
                      )
                      
          J#
          public Object Compute (
                           String expression,
                           String filter
                      )
                      
          JScript
          public function Compute (
                           expression : String,
                           filter : String
                      ) : Object
                      

           

          參數

          expression

          要計算的表達式。

          filter

          要限制在表達式中進行計算的行的篩選器。

           

           

          返回值

          Object,設置為計算結果。
          備注

          expression 參數需要聚合函數。例如,以下是合法表達式:

          Count(Quantity)

          但是以下表達式不合法:

          Sum (Quantity * UnitPrice)

          如果必須針對兩列或多列執行操作,則應該創建 DataColumn,并將它的 Expression 屬性設置為適當的表達式,然后針對結果列使用聚合表達式。在這種情況下,假定有一個名為“total”的 DataColumn,并且 Expression 屬性設置為:

          "Quantity * UnitPrice"

          Compute 方法的表達式參數將為:

          Sum(total)

          第二個參數 filter 確定在表達式中使用哪些行。例如,如果該表包含名為“colDate”的日期列,則可用以下表達式限制這些行:

          colDate > 1/1/99 AND colDate < 17/1/99

          有關為這兩個參數創建表達式的規則,請參見 DataColumn.Expression 屬性。

          下面的示例針對識別號碼為五的銷售人員,對名為“Total”(合計)的列的值求和。

          Visual Basic
          Private Sub ComputeBySalesSalesID(ByVal dataSet As DataSet)
                          ' Presumes a DataTable named "Orders" that has a column named "Total."
                          Dim table As DataTable
                           table = dataSet.Tables("Orders")
                          ' Declare an object variable.
                          Dim sumObject As Object
                           sumObject = table.Compute("Sum(Total)", "EmpID = 5")
                      End Sub
                      
          C#
          private void ComputeBySalesSalesID(DataSet dataSet)
          {
              // Presumes a DataTable named "Orders" that has a column named "Total."
               DataTable table;
               table = dataSet.Tables["Orders"];

              // Declare an object variable.
               object sumObject;
               sumObject = table.Compute("Sum(Total)", "EmpID = 5");
          posted on 2007-10-20 11:19 放水老倌 閱讀(12539) 評論(0)  編輯  收藏 所屬分類: .NET
          主站蜘蛛池模板: 九江市| 泸定县| 江油市| 杭锦旗| 潼南县| 上林县| 盘锦市| 嵊泗县| 新丰县| 阜阳市| 临沭县| 九台市| 吉林省| 中超| 赫章县| 仁寿县| 理塘县| 集贤县| 长白| 佛山市| 新竹市| 渑池县| 蒲城县| 全椒县| 汕头市| 西盟| 扶余县| 双峰县| 亚东县| 容城县| 蚌埠市| 大新县| 昭通市| 开阳县| 托里县| 阳高县| 长白| 都江堰市| 武威市| 清水县| 临潭县|