2012-09-18 2 views
1

데이터 집합에 'ds'라고 말하면서 tran_dtls 테이블에서 채 웁니다. 이제이 데이터 집합에 메서드를 쓰거나 여기데이터 집합/데이터 테이블에 대한 쿼리를 구현하는 데 문제가 있음

select sum(amt) from TRAN_DTLS 
where GL_CODE='" + row["gl_code"].ToString() + "' 
and SUB_CODE='" + row["sub_code"].ToString() + "' 
and DBCR='C'" 

AMT, GL_code는, DBCR이 tran_dtls 테이블의 컬럼 내가 원하는 그래서, SUb_code 있습니다 : 데이터 세트는 효과적으로 쿼리와 동일한 출력을 가진 나를 위해 스칼라 값을 검색 할 것이다,) 'DT' 해야할 일은 다양한 조건을 가진 금액의 합계를 선택하는 것입니다. 이렇게하기 전에 이런 일은 한번도하지 않았습니다. 따라서 이것이 가능할 지 모릅니다.

+0

당신이 사용할 수있는 LINQ – YardenST

+0

:하지만 당신은 LINQ를 사용할 수 있습니다 특정 행 기반의 일부 열 이름 – Snedden27

+0

문자열, 정수 또는 비트 값과 같은 단일 값을 검색하려는 경우 –

답변

1

나는 당신이 DataSet에 대해 SQL을 작성할 수 있다고 생각하지 않는다. 나는이 질문을하지만, 내가 이런 종류의 질의를 구현하는 대부분의 예들이 이상이 선택했다 주면서 어려운 것 같았다 전에 그것에 대해 읽어 예

var ds = new DataSet(); 
var tranDtls = new DataTable("tran_dtls"); 
tranDtls.Columns.Add("gl_code", typeof(string)); 
tranDtls.Columns.Add("amt", typeof(int)); 
var row = tranDtls.NewRow(); 
row["gl_code"] = "a"; 
row["amt"] = 1; 
tranDtls.Rows.Add(row); 
ds.Tables.Add(tranDtls); 

var result = ds.Tables["tran_dtls"].AsEnumerable() 
    .Where(r => (string)r["gl_code"] == "a") 
    .Select(r => (int)r["amt"]) 
    .Sum(); 
+0

이 방법이 효과가있을 것이라고 생각합니다. 시도해 보겠습니다. – Snedden27

관련 문제