select title,type,Createtime from a 
然后填充到到dataset,再根据title类型和的createtime的降序取出前10条,
再绑定到各个gridview1,gridview2....
庑问这怎么写?百度一下,不明白,后面如何再绑定到gridview,
语法如下如下:
string filter = "字段名='"+条件+"'";
//取出符合条件的记录
DataRow[] rows = DataTable.Select(filter);

解决方案 »

  1.   

    使用DataView吧,可以使用RowFilter筛选行,然后作为GridView的数据源
    DataView dv = ds.Tables[0].DefaultView;
    dv.RowFiler = "Age>20";

    参考
      

  2.   

    建立一个dataset  dt2  然后建立dt2的dr 将每行数据录入dt2  再绑定到gridview
      

  3.   

    转为Datable后运用select方法过滤就可以。。凡是关于多条数据只类的都有过滤功能  select \  FindAll  很多
      

  4.   

    你们说的是这样的吧,好像功能不是很多,能不能有个可以写SQL语句的?DataView   data=   DataSet.table[表名].DefaultView//你返回的dataset      
    data.RowFilter="字段名="+变量   
        
    datagrid.Datasourse=data;   
    datagrig.Databind();DataView   dv   =   ds.DataTable[0].DefaultView;   
    dv.RowFilter   =   "name='张三'";   
    dataGrid1.DataSource   =   dv;想拿前n条记录:
    DataTable table=yourTable.Clone();//克隆你现有表的结构
    yourTable.DefaultView.RowFilter="id<" + count;
    for(int i=0;i<n;i++)
    {
       DataRow newrow=yourTable.Rows[i];
       table.Rows.Add(newrow);
    }想按时间降序怎么写?在填入DATASET之前排序可以吧?
      

  5.   

    如果是早绑定  SQL语句就可以实现
    gridview1的绑定代码(SQL):select top 10 * from table where title =(select top 1 title,type,Createtime from a)
    后面依此类推。但是这样会比较耗费资源,如果是同一张表的话 把取出来的表缓存,其他的gridview在缓存表里面查找。如果晚绑定 就在事件里面写类似的SQL来绑定
      

  6.   

    根据各位的建议,我用DATAVIEW,不过代码太多,还有如何缩减代码?
     DataView dv1= ds.Tables[0].DefaultView;
            dv1.RowFilter = "Type='zpqz'";
           GridView1.DataSource = dv1;
           GridView1.DataBind();
    ..........dataview dv10=.......还有如何实现提取前10条记录?查到的方法是;提取n条记录:
    DataTable table=yourTable.Clone();//克隆你现有表的结构
    yourTable.DefaultView.RowFilter="id<" + count;
    for(int i=0;i<n;i++)
    {
       DataRow newrow=yourTable.Rows[i];
       table.Rows.Add(newrow);
    }这方法好像不行啊,报错,CS0117: “System.Data.DataView”并不包含“Clone”的定义