Skip to main content
.NET Framework Class Library
DataTable..::.Select Method (String, String)

Gets an array of all DataRow objects that match the filter criteria, in the specified sort order.

Namespace: System.Data
Assembly: System.Data (in System.Data.dll)
Syntax
Public Function Select ( _
	filterExpression As String, _
	sort As String _
) As DataRow()
public DataRow[] Select(
	string filterExpression,
	string sort
)
public:
array<DataRow^>^ Select(
	String^ filterExpression, 
	String^ sort
)
member Select : 
        filterExpression:string * 
        sort:string -> DataRow[] 

Parameters

filterExpression
Type: System..::.String
The criteria to use to filter the rows.
sort
Type: System..::.String
A string specifying the column and sort direction.

Return Value

Type: array<System.Data..::.DataRow>[]()[]
An array of DataRow objects matching the filter expression.
Remarks

To form the filterExpression argument, use the same rules for creating the DataColumn class's Expression property value. The Sort argument also uses the same rules for creating class's Expression strings.

If the column on the filter contains a null value, it will not be part of the result.

Examples

The following example uses a filter expression to return an array of DataRow objects.


Private Sub GetRowsByFilter()
    Dim table As DataTable = DataSet1.Tables(0)

    ' Presuming the DataTable has a column named Date.
    Dim expression As String = "Date > 1/1/00"

    ' Sort descending by column named CompanyName.
    Dim sortOrder As String = "CompanyName DESC" 
    Dim foundRows() As DataRow

    ' Use the Select method to find all rows matching the filter.
    foundRows = table.Select(expression, sortOrder)

    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


   private void GetRowsByFilter()
   {
       DataTable table = DataSet1.Tables["Orders"];

       // Presuming the DataTable has a column named Date.
       string expression = "Date > '1/1/00'";

       // Sort descending by column named CompanyName.
       string sortOrder = "CompanyName DESC";
       DataRow[] foundRows;

       // Use the Select method to find all rows matching the filter.
       foundRows = table.Select(expression, sortOrder);

       // Print column 0 of each returned row.
       for(int i = 0; i < foundRows.Length; i ++)
       {
           Console.WriteLine(foundRows[i][0]);
       }
   }


Version Information

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1
Platforms

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.