DataTable.Select メソッド (String, String)
フィルタ基準と一致するすべての DataRow オブジェクトの配列を、指定した並べ替え順で取得します。
Overloads Public Function Select( _
ByVal filterExpression As String, _ ByVal sort As String _) As DataRow()
[C#]
public DataRow[] Select(stringfilterExpression,stringsort);
[C++]
public: DataRow* Select(String* filterExpression,String* sort) [];
[JScript]
public function Select(
filterExpression : String,sort : String) : DataRow[];
パラメータ
- filterExpression
行にフィルタをかけるために使用する基準。 - sort
列と並べ替え方向を指定する文字列。
戻り値
フィルタ式と一致する DataRow オブジェクトの配列。
解説
引数 filterExpression を作成するには、 DataColumn クラスの Expression プロパティの値を作成するときと同じ規則を使用します。引数 Sort は、クラスの Expression 文字列を作成するときと同じ規則も使用します。
使用例
[Visual Basic, C#, C++] フィルタ式を使用して DataRow オブジェクトの配列を返す例を次に示します。
Private Sub GetRowsByFilter()
Dim t As DataTable
t = DataSet1.Tables(0)
' Presuming the DataTable has a column named Date.
Dim strExpr As String
Dim strSort As String
strExpr = "Date > 1/1/00"
' Sort descending by column named CompanyName.
strSort = "CompanyName DESC"
Dim foundRows() As DataRow
' Use the Select method to find all rows matching the filter.
foundRows = t.Select(strExpr, strSort)
Dim i As Integer
' Print column 0 of each returned row.
For i = 0 to foundRows.GetUpperBound(0)
Console.WriteLine(foundRows(i)(0))
Next i
End Sub
[C#]
private void GetRowsByFilter(){
DataTable myTable;
myTable = DataSet1.Tables["Orders"];
// Presuming the DataTable has a column named Date.
string strExpr;
string strSort;
strExpr = "Date > '1/1/00'";
// Sort descending by column named CompanyName.
strSort = "CompanyName DESC";
DataRow[] foundRows;
// Use the Select method to find all rows matching the filter.
foundRows = myTable.Select(strExpr, strSort);
// Print column 0 of each returned row.
for(int i = 0; i < foundRows.Length; i ++){
Console.WriteLine(foundRows[i][0]);
}
}
[C++]
private:
void GetRowsByFilter(){
DataTable* myTable;
myTable = DataSet1->Tables->Item[S"Orders"];
// Presuming the DataTable has a column named Date.
String* strExpr;
String* strSort;
strExpr = S"Date > '1/1/00'";
// Sort descending by column named CompanyName.
strSort = S"CompanyName DESC";
DataRow* foundRows[];
// Use the Select method to find all rows matching the filter.
foundRows = myTable->Select(strExpr, strSort);
// Print column 0 of each returned row.
for(int i = 0; i < foundRows->Length; i ++){
Console::WriteLine(foundRows[i]->Item[0]);
}
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET
参照
DataTable クラス | DataTable メンバ | System.Data 名前空間 | DataTable.Select オーバーロードの一覧 | CaseSensitive | Expression | DataRow