靈魂-放水

          為學(xué)日益,為道日損。

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




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

          計(jì)算用來(lái)傳遞篩選條件的當(dāng)前行上的給定表達(dá)式。

          命名空間: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
                      

           

          參數(shù)

          expression

          要計(jì)算的表達(dá)式。

          filter

          要限制在表達(dá)式中進(jìn)行計(jì)算的行的篩選器。

           

           

          返回值

          Object,設(shè)置為計(jì)算結(jié)果。
          備注

          expression 參數(shù)需要聚合函數(shù)。例如,以下是合法表達(dá)式:

          Count(Quantity)

          但是以下表達(dá)式不合法:

          Sum (Quantity * UnitPrice)

          如果必須針對(duì)兩列或多列執(zhí)行操作,則應(yīng)該創(chuàng)建 DataColumn,并將它的 Expression 屬性設(shè)置為適當(dāng)?shù)谋磉_(dá)式,然后針對(duì)結(jié)果列使用聚合表達(dá)式。在這種情況下,假定有一個(gè)名為“total”的 DataColumn,并且 Expression 屬性設(shè)置為:

          "Quantity * UnitPrice"

          Compute 方法的表達(dá)式參數(shù)將為:

          Sum(total)

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

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

          有關(guān)為這兩個(gè)參數(shù)創(chuàng)建表達(dá)式的規(guī)則,請(qǐng)參見(jiàn) DataColumn.Expression 屬性。

          下面的示例針對(duì)識(shí)別號(hào)碼為五的銷售人員,對(duì)名為“Total”(合計(jì))的列的值求和。

          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 放水老倌 閱讀(12540) 評(píng)論(0)  編輯  收藏 所屬分類: .NET
          主站蜘蛛池模板: 延安市| 渑池县| 麻栗坡县| 西平县| 芒康县| 紫阳县| 台南市| 汤原县| 南部县| 广水市| 喜德县| 寿宁县| 屏边| 威信县| 博兴县| 开平市| 阜南县| 新竹市| 铅山县| 昆明市| 沽源县| 鱼台县| 威宁| 新民市| 荣昌县| 横山县| 出国| 长汀县| 远安县| 枣庄市| 正阳县| 凤台县| 肇东市| 鄂尔多斯市| 靖西县| 商河县| 综艺| 江安县| 榆树市| 区。| 广德县|