例如 一个数据表里面三个字段:一个人名, 一个日期 ,一个数值,现在装载到Dategrid中每一个字段都是列成一列,现在我想把不同的人 同一个时间的数据横向排列写到GRID中 ,请高手帮忙。

解决方案 »

  1.   

    DataGridView数据源为一个DataTable,
        按照你的需求对DataTable进行数据处理,按照你的需求,固定时间人数是不固定的,所以你可以先查询出时间相等的记录行数有多少条,那么这个就是人名列数n,加上日期和数值 
    那你定义的DataTable 的列数应该为 n+2;
    设定你初始 DataGridView显示数据源 dtShow
    先搜索出不重复的时间 记录下来,
    然后再根据时间搜索出时间,依次写入到dtShow中
      

  2.   

    例如 数据表里面有三个字段:1、姓名 2、日期 3、数值; 表里面总共4条数据 1、张三 2013-3-17 50
    2、 张三 2013-3-18 46 3、李四 2013-3-17 55 4、李四 2013-3-18 51 我想把数据表的数据写到GRID表格控件中,在控件中这么显示 第一行 2013-3-17 张三 50 李四 55 第二行 2013-3-18 张三 46 李四 51
    这样子;表述的清楚吗?各位高手?
      

  3.   

    用SQL搜索数据的时候给where个条件,你的问题可用用SQL行列互换可以解决
    具体参考:
    http://hi.baidu.com/wrgcxfcoybinpur/item/90f388e2ec0f853286d9decc
      

  4.   

    数据绑到datagrid前先处理数据
      

  5.   

    fangmenglong12,谢谢你的提点,你给的例子很受用,但是日期格式的字段能行列互换吗?
    declare @sql varchar(8000)select @sql = isnull(@sql + '],[' , '') + 日期 from tb group by 课程set @sql = '[' + @sql + ']'exec ('select * from (select * from tb) a pivot (max(分数) for 课程 in (' + @sql + ')) b')提示从字符串向 datetime 转换时失败