winform中如何在datagridview中显示如下信息:如3月5号,就显示前五天的数据信息,3月7号,就显示前七天的数据信息,显示的信息是从数据库中取出来的,数据库对应的表中有date字段,只计算这个月几号前面的几天,最后加一列求这一行几天数据的平均值,我是初学者,请高手指点,谢谢

解决方案 »

  1.   

    动态组成SQL语句,将查询结果的Table绑定到datagridview。
      

  2.   

    根據今天的日期獲得列數colNum(比如今天7月10號就是7列,求平均數的一列不在循環中,最後加),然後做循環將數據加入datatable中
    datatable dt = new datatable();
    string col;
    for(int i=0;i<colNum;i++)
    {
      col = convert.todatetime("7月"+i+"號")
      dt.columns.add(col);
      //可以加入sql語句抓數據,也可以另外循環
    }
    //最後加平均列
    dt.columns.add("平均");
    //winform上的datagridview
    dgv.datasource = dt;
      

  3.   

    寫錯了
    col = "7月"+i+"號"
      

  4.   

    用SQL中的 top获取你需要显示的多少列,然后再datagridview的列中加新列把数据加进去就行了
      

  5.   

    日期是从DateTimePicker这个控件中选择的日期,数据库中记录的日期是date类型,年月日都可以是随机的
      

  6.   

    datagridview中显示一个月前几号的列数是根据DateTimePicker中的日期月份的变化而变化的,日期格式如2013-07-11,请高手写具体代码,我实在不会
      

  7.   

    dt.columns.add(DateTimePicker.value.toString("yyyy-MM-dd"));//列名
    //數據庫查詢時時間條件語句
    string Stime = "to_date('"+DateTimePicker.value.toString()+"','yyyy-MM-dd')"
    sql = ".............where time = "+stime;
      

  8.   

    根據日期獲取列數的話,貌似
    int colSum = system.datetime.now.day;//還是system.datetime.date.day記不清
    // 楚了不過VS裏面應該很好找的,只要幾號那麼這個月就是幾天,列數就是幾列
      

  9.   

    动态添加的列数显示的内容不是date日期,而是另一个字段的值,如kcl,动态添加的列名是根据日期动态添加的