Development Tip

asp.net에서 데이터 테이블 열의 합계를 계산하는 방법은 무엇입니까?

yourdevel 2020. 12. 2. 22:02
반응형

asp.net에서 데이터 테이블 열의 합계를 계산하는 방법은 무엇입니까?


5 개의 열이있는 DataTable이 있습니다.

  • 신분증
  • 이름
  • 계좌 번호
  • 분기

DataTable에는 5 개의 행이 있습니다.

레이블 컨트롤의 금액 열 합계를 "총 금액"으로 표시하려면 어떻게해야합니까?


DataTable의 열 합계를 계산하려면 DataTable.Compute 메서드를 사용하십시오 .

링크 된 MSDN 문서의 사용 예 :

DataTable table = dataSet.Tables["YourTableName"];

// Declare an object variable.
object sumObject;
sumObject = table.Compute("Sum(Amount)", string.Empty);

총액 라벨에 다음과 같이 결과를 표시합니다.

lblTotalAmount.Text = sumObject.ToString();

 this.LabelControl.Text = datatable.AsEnumerable()
    .Sum(x => x.Field<int>("Amount"))
    .ToString();

결과를 필터링하려면 다음을 수행하십시오.

 this.LabelControl.Text = datatable.AsEnumerable()
    .Where(y => y.Field<string>("SomeCol") != "foo")
    .Sum(x => x.Field<int>("MyColumn") )
    .ToString();

당신은 ..

DataRow[] dr = dtbl.Select("SUM(Amount)");
txtTotalAmount.Text = Convert.ToString(dr[0]);

ADO.Net DataTable이 있다면 할 수 있습니다.

int sum = 0;
foreach(DataRow dr in dataTable.Rows)
{
   sum += Convert.ToInt32(dr["Amount"]);
}

데이터베이스 테이블을 쿼리하려면 다음을 사용할 수 있습니다.

Select Sum(Amount) From DataTable

  public decimal Total()
    {
      decimal decTotal=(datagridview1.DataSource as DataTable).Compute("Sum(FieldName)","");
      return decTotal;
    }

Datatable의 열 합계 계산, 100 % 작동

lbl_TotaAmt.Text = MyDataTable.Compute("Sum(BalAmt)", "").ToString();

조건이 있으면 이렇게 사용하세요

   lbl_TotaAmt.Text = MyDataTable.Compute("Sum(BalAmt)", "srno=1 or srno in(1,2)").ToString();

이름 그룹으로 Linq를 사용할 수 있습니다.

  var allEntries = from r in dt.AsEnumerable()
                            select r["Amount"];

네임 스페이스 사용 using System.Linq;

You can find the sample total,subtotal,grand total in datatable using c# at Myblog


Try this

int sum = 0;
foreach (DataRow dr in dt.Rows)
{
     dynamic value = dr[index].ToString();
     if (!string.IsNullOrEmpty(value))
     { 
         sum += Convert.ToInt32(value);
     }
}

I think this solves

using System.Linq;


(datagridview1.DataSource as DataTable).AsEnumerable().Sum(c => c.Field<double>("valor"))

참고URL : https://stackoverflow.com/questions/5892993/how-to-calculate-the-sum-of-the-datatable-column-in-asp-net

반응형