动态生成标题列

问题描述

在数据库中,每条记录都有一个【登陆时间】,格式为:yyyy/mm/dd。现在在页面上输入【开始时间】和【结束时间】,对每个月的记录进行统计。要求标题列根据页面上输入的时间范围进行动态生成。比如,页面上输入:【开始时间】:2011/01/01【结束时间】:2011/05/02则如下进行显示:姓名共计金额2011/012011/022011/032011/042011/05aa1000050000500bb2000100005005000请问这样的表头怎么动态生成,还有怎么进行统计.

解决方案

解决方案二:
那你就根据时间查询记录根据记录条数循环显示数据就可以了
解决方案三:
怎么生成,怎么统计就是你的算法,代码该怎么写的,难度不大,自己去写吧
解决方案四:
思路如下:(1)根据条件获得所有数据(2)列转行(行列转换的一种,网上可以找到很多资料的)注:推荐书籍《SQlCookBook》,t-sql/p-sql各种复杂的语法都可以学到
解决方案五:
我说的这种做法,完全是用SQL生成出你的数据结构的。
解决方案六:
this.dataGridView.Columns.Clear();DataGridViewTextBoxColumncolumnLis=newDataGridViewTextBoxColumn();columnLis.ReadOnly=true;columnLis.HeaderText="使用単価名";columnLis.DisplayIndex=0;columnLis.Name="LisName";columnLis.SortMode=DataGridViewColumnSortMode.NotSortable;columnLis.DefaultCellStyle.Alignment=DataGridViewContentAlignment.MiddleLeft;columnLis.Width=135;this.dataGridView.Columns.Add(columnLis);你就把columnLis.HeaderText的值写成动态生成赋在一个字符串里columnLis.HeaderText=那个字符串就行了。
解决方案七:
引用楼主mznxbcv000的回复:

云计算与80年代“大型机-终端...Hadoop和云计算有什么关系?我如何来学习云计算技术?从哪...云计算在金融领域有哪些应用?云计算在生命科学领域有何应用?在数据库中,每条记录都有一个【登陆时间】,格式为:yyyy/mm/dd。现在在页面上输入【开始时间】和【结束时间】,对每个月的记录进行统计。要求标题列根据页面上输入的时间范围进行动态生成。比如,页面上输入:【开始……

无非就是一个行列转换的问题去找个犀利SQL语句就搞定了
解决方案八:
闲着没事,给你写个吧..
解决方案九:
你参照这个,写个动态,就OK了,都是一些字符串的拼接DECLARE@StartDateDATETIMEDECLARE@EndDateDATETIMEDECLARE@TableTABLE(UserNameVARCHAR(6),AmountNUMERIC(8,2),LoginTimeDATETIME)DECLARE@inINTINSERTINTO@Table(UserName,Amount,LoginTime)SELECT'张三',10,'2011-10-1014:20:30'UNIONALLSELECT'张三',50,'2011-11-1214:20:30'UNIONALLSELECT'张三',80,'2011-11-1310:20:30'UNIONALLSELECT'张三',90,'2011-11-1416:30:30'UNIONALLSELECT'李四',100,'2011-10-0614:20:30'UNIONALLSELECT'李四',110,'2011-10-1914:20:30'SET@StartDate='2011-10-01'SET@EndDate='2011-12-01'SET@in=DATEDIFF(MM,@StartDate,@EndDate);WITHListAS(SELECTCONVERT(VARCHAR(7),DATEADD(MM,T.number,@StartDate),120)AS[Date]FROM(SELECTDistinctnumberFROMmaster.dbo.spt_valuesWHEREnumber<=@inANDnumber>=0)T)SELECTT.UserName,SUM(CASEWHENList.Date='2011-10'THENT.AmountELSE0END)AS[2011-10],SUM(CASEWHENList.Date='2011-11'THENT.AmountELSE0END)AS[2011-11],SUM(CASEWHENList.Date='2011-12'THENT.AmountELSE0END)AS[2011-12]FROMListRIGHTJOIN@TableTONCONVERT(VARCHAR(7),T.LoginTime,120)=List.DateGROUPBYT.UserName/*(6行受影响)UserName2011-102011-112011-12-----------------------------------------------------------------------------------------------------------------------------李四210.000.000.00张三10.00220.000.00(2行受影响)*/

时间: 2024-09-13 11:30:33

动态生成标题列的相关文章

c# gridview 怎么动态生成模板列呢?

问题描述 c# gridview 怎么动态生成模板列呢? 刚学 c# 查了百度 有点看不懂 求大手帮我写一下 这里是绑定 //绑定 public void bind() { string sqlstr = "select * from tijianjieguo"; sqlcon = new SqlConnection(strCon); SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon); DataSet myds = new

jQuery EasyUI中DataGird动态生成列的方法_jquery

EasyUI中使用DataGird显示数据列表中,有时需要根据需要显示不同的列,例如,在权限管理中,不同的用户登录后只能查看自己权限范围内的列表字段,这就需要DataGird动态组合列,下面介绍EasyUI中DataGird动态生成列的方法. DataGird动态生成列,实际上就是控制DataGird的 columns 属性值,下面通过ajax异步调用后台columns的数据,进行绑定. <table id="dg"></table> <script>

gridview动态生成列,动态添加控件问题

问题描述 在GRIDVEIW的行绑定ROWDATABOUND里生成了N个列,并且往行里的某些单元格里加了DROPDOWNLIST,显示都没问题,但是我一点页面的按钮,本想通过循环GRIDVIEW,找到每一行里的DROPDWNLIST,可是结果是不能找到.而且动态生成的列也没有了.我又把代码放在ROWCREADER事件里创建列,及为列的单元格里增加DROPDOWNLIST,在执行调试时发现原先在页面上的列里放的HIDDEN控件也找不到,后来通过e.Row.DataItem可以取到我我存在HIDDE

GridView动态生成TextBox模板列后如何取值的问题

问题描述 各位好,这个问题以前有人提过了,但是我研究了好几天用到我的程序里就总出现问题,希望高手能够帮帮忙,谢谢!我需要用GridView动态生成列数不固定的模板列,然后在里面添加textbox控件后,由用户输入数值,然后将这些值获取出来.但是我运行到这里就总是出现错误说"既不是表的DataColumn也不是表的DataRelation".代码如下:usingSystem;usingSystem.Data;usingSystem.Configuration;usingSystem.Co

C#实现DataGrid(GridView)动态生成列

有时候需要在DataGrid(GridView)里显示的数据列数是不固定的,而且还需要对数列列进行控制,如显示或隐藏,这时我们就不能用DataGrid里的自动生成列,更不能对列做数据绑定了,但我们有个办法,就是动态地生成数据列,DataGrid的动态列其实就是以类的形式存在,功能很强大. 要实现动态列,首先要添加一个类文件,这个类必须要继承ITemplate接口,主要是要实现一个方法:InstantiateIn,在InstantiateIn里做的是对该动态列做事件控制的绑定,如OnDataBin

c# winform 怎么动态生成4行3列的lable 当lable大于12个进行翻页显示,并且lable动态增加与减少

问题描述 c#winform怎么动态生成4行3列的lable当lable大于12个进行翻页显示,并且lable动态增加与减少(举例:当数量为9时lable数量是9当数量为10是lable数量为10如何数量减少lable数量也随之减少静态更新) 解决方案 解决方案二: flowLayoutPanel试试这个控件解决方案三: 怎么实现静态刷新啊,每次刷新都是一闪一闪的解决方案四: 还不如直接说你的需求解决方案五: 真心没看懂你的需求解决方案六: 以下代码在vs2013下调试通过.新建一个Window

easyui-关于easyUI的dategrid如何能够根据数据库数据的多少动态生成有多少个列?

问题描述 关于easyUI的dategrid如何能够根据数据库数据的多少动态生成有多少个列? 关于easyUI的dategrid如何能够根据数据库数据的多少动态生成有多少个列? 解决方案 的成绩对比vzbkvjdskjkdv比较 解决方案二: 只需要将数据库中的值全部查询出来,然后根据api上面给出的json格式返回给datagrid就可以啦 解决方案三: 只要按照dategrid的格式传给它,就自动组装好了啊 解决方案四: sql编程 存储过程 之 动态添加数据库表列并更新数据库表数据

有点急!!!wpf 有关datagrid的多行表头 列有合并 而且列是动态生成的 动态绑定

问题描述 本人刚开始学习写wpf项目,遇到棘手问题,如下:数据库抽出的数据如下(datatable的内容)考核工种1....工种S日期人员天数金额....天数金额20150101张三25001120020150102张三25001120020150103张三250011200.....工种那块项目一样但是对应的字段名不一样.datagrid如果复杂的话,有简单可以达到这个效果的控件吗?求前后台代码的sample(xaml和C#),比较急,自己研究了几天,没有成果,郁闷! 解决方案 解决方案二:找

asp.net根据条件动态生成GridView,并动态绑定列,且可对其进行编辑的实现

 根据用户需要,一个页面中,有几个不同的button,点击不同的button,可在下方同一区域产生gridview,(当然他们的gridview是不同的).之前用MultiView来控制,用了几个view在html中绑定了几个Gridview,然后根据点击的按钮不同,切换不同的view.但总觉得这种方式不爽~~,html代码太多,控制起来很麻烦~!   于是就想到用这种动态的方式实现.Html中只有一个div,用来放置生成的控件,其他全部在后台实现.   有一点需要注意:如果是在html中加入的