就是记录变成字段。字段变成记录。以前有看过有人发过,可找不到了。想来可能要自己写代码。似乎要用到dataset。不太知道怎么写。还有个怎么从表里筛出另一张表。

解决方案 »

  1.   

    不是很明白楼主的意思,根据我的理解来说一下吧
    楼主的意思是不是说把所有的数据都显示在一行?
    其实显示成多少列都是你自己控制的,要是想这样的话,可以建立一个模板列:
     <Columns>
                    <asp:TemplateField>
    <%#Eval("绑定的列")%><%#Eval("two")%>
    </asp:TemplateField>
                </Columns>
    可以随便在这里进行控制。
    在cs文件中只需要将相应的数据源绑定上去就可以了,用DataSet和Sqldatareader都可以的。
      

  2.   

    还有个怎么从表里筛出另一张表。
    、、、、、、、、、
    如果已经读到DataSet中了,可以将DataTable转化为DataView,然后根据你需要的条件进行筛选。
      

  3.   

    是不是想要这样的结果?
    例:表 A
    id  l(年份)  y(月份)   count
    1    2006     1         10
    1    2006     2         20
    2    2006     1         30想查出这样的结果
    id   2006.1   2006.2 ....(很多时间)  (年和月合并成字段名)
    1     10        20    ....(对应的count)
    2     30       null   Declare @S Varchar(8000)
    Select @S = 'Select id'
    Select @S = @S + ' , SUM(Case When l = ' + Rtrim(l) + ' And y = ' + Rtrim(y) + ' Then [count] Else Null End) As [' + Rtrim(l) + '.' + Rtrim(y) + ']'
    From A Group By l, y
    Select @S = @S + ' From A Group By id Order By id'
    EXEC(@S)
      

  4.   

    先谢楼上的。我可能要从数据库中取一列的数据,然后到GRIDVIEW显示一行出来,这么说吧,以前面例子为例就是
    id          1     1     2
    年份       2006  2006   2006
    自己写模板是会。可是要从数据库中取哦。就不会了。。哈哈哈。不知道有没有templatefield.add之类的东西。我是没找到。用datatable.columns.add好像是可以。不过要放图片啊。就是要把数据库中的图片路径显示到gridview上,不过竖得不好看,所以最好换成横的。
      

  5.   

    用DataList,然后把显示改为横向显示
    RepeatDirection:Horizontal
    就可以了
      

  6.   

    2个方法:
    1、用DataList,然后把显示改为横向显示 RepeatDirection:Horizontal
    2、用table 中的column 和row 拼出行和列榜定datagrid上。