Select Top 10 from a DateTable???

L

luckyShek

Hi! I want to select only 10 rows from a dataTable each time, just as
from a database("SELECT TOP 10 FROM orders WHERE ID <100 ORDER BY
ID"). for example:

DataTable myTable = new DataTable("orders");
DataRow[] rows = myTable.Select("TOP 10 ID < 100");
1)How can I write the correct statement.
2)Can I ues "TOP" key word or there's other way to do it?
P.S. I mean from a dataTable.

Thank you very much. :shock:

*-----------------------*
Posted at:
www.GroupSrv.com
*-----------------------*
 
G

Guest

Not sure if this is the best option, but you could always just grunt it out
the old-fashioned way:

Dim dr(9) as DataRow
Dim i as integer
for i=0 to 9
dr(i)=DataTable.Rows(i)
next i

....or whatever the C# equivalent woud be
 
J

JuLiE Dxer

Is it feasible for you to just iterate through the DataTable grabbing
the first ten Rows from the DataTable's DataRowCollection object ?

perhaps,


DataRow[] rows = new DataRow[10];

for (int i=0 ; i < 10 ; i++)
{
rows[ i ] = myTable.Rows[ i ];
}


providing there isn't less than 10 rows present in your DataTable
object.
 
M

Miha Markic [MVP C#]

Hi,

You should first create a DataView over the table using RowFilter = "Id<100"
and Sort = "ID" and then you should do a for loop
for (int i=0; i<9; i++)
{
DataRow rv = dv.Row;
}

Once you have a row, do as others suggested.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top