能再说的仔细点儿吗,SQL不太懂,有不操作sql,只写后台代码的方法吗

解决方案 »

  1.   

    应该只有超做sql最简单吧,你把你的2个表结构给出来吧
    行转列就是把你工资项目的行转换成列跟员工表的数据合并在一起
      

  2.   

    你可以试下,构造一个datatable,
    因为是行转列嘛,so,构造的datatable的行就固定了,
    列的数量就是原来的数据表(横着的那个)的行数,
    然后用嵌套循环(横着循环取数据,竖着循环添加构造datatable的列,并把数据插进去),
    得到一个新的数据集合几年前做过一个类似的,我几乎是掰着手指头去一步步调试、计算那个嵌套循环的逻辑的,头都想大了
      

  3.   

    http://topic.csdn.net/u/20100809/20/80FD4B8E-82D6-4457-B1D7-377B9502C356.html
    http://topic.csdn.net/u/20071119/17/C5919FB2-523C-44D9-A5B1-6EC26BEE72E1.html
    看看这些吧,都是你那类似的
      

  4.   

    我在网上找了一个,GridView列标题修改成自己想要的用GridView.Columns[0].HeaderText = "", 行不通
    到网上找了下,应该是先绑定,再用GridView.HeaderRow.Cells[n]foreach (DataGridViewColumn col in this.dataGridView1.Columns)
                {
                    string columnname = col.HeaderText;
                }protected void GridView1_DataBound(object sender, EventArgs e)
        {
            //列数
            int count = this.GridView1.HeaderRow.Cells.Count;
            for (int i = 0; i < count; i++)
            {
                string oldValue = this.GridView1.HeaderRow.Cells[i].Text;
                if (oldValue == "UserName")
                {
                    this.GridView1.HeaderRow.Cells[i].Text = "用户名";
                }
                else if (oldValue == "Order")
                {
                    this.GridView1.HeaderRow.Cells[i].Text = "订单";
                }
                else
                {
                    this.GridView1.HeaderRow.Cells[i].Text = "其他";
                }
            }
                
        }但是 第一步绑定中 DataGridViewColumn 找不到。。