2009-07-29 8 views
7

ADO.NET의 DataView를 만들기 하나는 소정의 DataTableDataColumn S 만 적절한 서브 세트를 포함하는 DataView을 만들 수 있는가? 관계 대수 측면에서C 번호 & .NET에서 선택된 열을 도시

은 하나는 "선택"동작 (σ)을 수행하기 위해 할당 RowFilter. "투영"조작 (π)을 수행하는 방법은 무엇입니까?

답변

12

당신은 그렇게 할 수는 없지만, 당신은 단지 열이 테이블의 사본을 만들 수 있습니다 당신이 원하는 :

DataView view = new DataView(table); 
DataTable table2 = view.ToTable("FirstColumn", "SecondColumn", "ThirdColumn"); 

가 선택적으로 선택한 열에 대한 고유 한 값이 행을 반환 할 수 있습니다

DataView view = new DataView(table); 
DataTable table2 = view.ToTable(true, "FirstColumn", "SecondColumn", "ThirdColumn"); 
+0

고마워요, 토마스. 또한 "table2"에 계산 된 열을 포함시킬 수 있기를 바랍니다. 예를 들어, view.ToTable ("FirstColumn * 2", "SecondColumn> 0", "TRIM (ThirdColumn)"). '$ DataTable.DefaultView.ToTable ("FirstColumn", "SecondColumn : – JaysonFix

+0

당신은 DataTabe의 기본보기를 사용하여이 단축 될 수 있습니다 테이블을 생성하고 ToTable에서 그들을 선택하거나 ... 당신이 그것을 만든 후에는 표 2에 –

+1

를 추가 ","ThirdColumn "); ' –

1

그럼 내가 DataView를 원래 테이블의 행에 대한 포인터의 단지 목록입니다 기억 ... 그렇게 "원하는"에 대한 어떤 이유를 볼 수 없습니다로부터 열을 제거 할 수있는 방법은 분명히 없다 원래 테이블 ... 적어도 그 테이블을 활용하는 다른 모든 기능에 영향을 미치지 않고 ... 단지 원하는 열만 사용하면됩니다. ...

-1

관계형 관계형 연산을 수행 할 능력이 없습니다.