如何实现可变顺序表头左右列的变换(安统计数排左右表列)

问题描述

表1编号产品名1HPT2HPA3HCD4AC表二日期数量产品2015-1-210HPA2015-1-26HPT2015-1-37HCD2015-1-33HPT2015-1-320AC2015-1-35HPA2015-1-410HPA显示效果查询条件查一天日期从[2014-1-2]到[2014-1-2]得下表并显示日期HPAHPTHCDAC合计2014-1-21060016合计1060016查询条件查几天日期从[2014-1-2]到[2014-1-4]日期HPAACHPTHCD合计2014-1-210060162014-1-352037452014-1-41000010合计25209761用repeartergridview...用什么能实现显示成这个表

解决方案

解决方案二:
搜一搜:SQL行转列另,你表1根本没有任何存在的意义除非表2里不要直接存产品名,而是存编号
解决方案三:
select日期,max(case产品when'HPA'then数量else0end)HPA,max(case产品when'AC'then数量else0end)AC,max(case产品when'HPT'then数量else0end)HPT,max(case产品when'HCD'then数量else0end)HCD,sum(数量)合计from表2groupby日期

这里的HPT,HCD等等都是个例子,具体你得去遍历表1去循环,转换完之后在根据时间去查询你试试吧,一起坐等大神
解决方案四:
Sql上问题不大,难的是在前台页面显示读取时表头,名怎么动态呢根据数据查那个左右排序,那个在前那个排在后,都是动态的!第一列日期,没有问题,到了第二列,事先不知道第二列是那个产品,第三列,就不知怎么绑定了怎么用repeater,或gridview...这些控件来给它显出出来?
解决方案五:
要么你就先查询一下这个时间段都出现了哪些产品要么就不要管这个产品到底是否出现过,都给他显示出来
解决方案六:
就是在全部显示出来了,但是,就不知道表头要怎么来绑定,因常用的方法是表头都是写死的,所以那个好做,但这个是表头变动态呢了,第二列是那个产品都是动态呢。。
解决方案七:
表1编号产品名1HPT2HPA3HCD4AC。。。。表二日期数量产品2015-1-210HPA2015-1-26HPT2015-1-37HCD2015-1-33HPT2015-1-320AC2015-1-35HPA2015-1-410HPA。。。。显示效果查询条件查一天日期从[2014-1-2]到[2014-1-2]得下表并显示日期HPAHPTHCDAC合计2014-1-21060016合计1060016查询条件查几天日期从[2014-1-2]到[2014-1-4]日期HPAACHPTHCD。。。合计2014-1-210060。。。162014-1-352037。。。452014-1-410000。。。10合计252097。。。61重点在于用repeartergridview...用什么能实现显示成这个表表头动态!
解决方案八:
第一个方法:有个傻瓜的方法(不推荐,但容易实现)在aspx文件上写<%if(是一天的){%>日期HPAHPTHCDAC合计//用repearter去弄还是怎么弄你自己定了。<%}else{%>日期HPAACHPTHCD合计//用repearter去弄还是怎么弄你自己定了。<%}%>上面两个的repeater的ID都一样就好了,这样后台的repeater绑定都一样了第二个方法:后台直接判断是否一天,然后再输出整个table在前台例如.cs中publicstringShowTb(){if(是一天的){return"<table><tr><th>日期</th><th>HPA</th></tr></table>"//剩下的自己拼吧;}else{return"<table><tr><th>HPA</th><th>日期</th></tr></table>"//剩下的自己拼吧;}}然后前台调用这个方法。不过给我的话会用js去处理咯。。。上面的方法挺傻瓜了,希望能帮到你

时间: 2024-09-15 02:40:27

如何实现可变顺序表头左右列的变换(安统计数排左右表列)的相关文章

javascript实现动态表头及表列的展现方法_javascript技巧

本文实例讲述了javascript实现动态表头及表列的展现方法.分享给大家供大家参考.具体如下: <!-- 作者:恺哥 时间:2008-11-5 用途:测试动态表头与动态表列的展现 --> <html> <head> <title>test</title> </head> <body> <script language="javascript"> //初始化表列 var t_column =

lotus表单中勾选某一列前的复选框,则这个列下的富文本域由灰色,变成可以上传的正常状态?怎么做?

问题描述 lotus表单中勾选某一列前的复选框,则这个列下的富文本域由灰色,变成可以上传的正常状态?怎么做? 可以在表单中做到这样的效果吗:勾选某一列前的复选框,则这个列下的富文本域由灰色(不可上传),变成可以上传的正常状态?怎么做?

数据库的垂直分割、水平分割和表列散之间的“纠葛”

1,有时对表做分割可以提高性能.表分割有两种方式: 1水平分割:根据一列或多列数据的值把数据行放到两个独立的表中. 水平分割通常在下面的情况下使用. •表很大,分割后可以降低在查询时需要读的数据和索引的页数,同时也降低了索引的层数,提高查询速度. •表中的数据本来就有独立性,例如表中分别记录各个地区的数据或不同时期的数据,特别是有些数据常用,而另外一些数据不常用. •需要把数据存放到多个介质上.   水平分割会给应用增加复杂度,它通常在查询时需要多个表名,查询所有数据需要union操作.在许多数

现在,有这样一个功能。每当查询之前,先选择所要显示的哪几列及字段.(如显示:姓名,年龄)。然后,查询时,只显示所选择的哪几列及字段的信息。数据库,表应该怎样来设

问题描述 现在,有这样一个功能.每当查询之前,先选择所要显示的哪几列及字段.(如显示:姓名,年龄).然后,查询时,只显示所选择的哪几列及字段的信息.数据库,表应该怎样来设计?谢谢! 解决方案 解决方案二:跟数据库设计有什么关系??解决方案三:嗯,你认为,应该怎样去实现这样一个功能呢?解决方案四:没太懂你的需求查询前显示的跟查询后显示的数据有关联????解决方案五:person里有姓名,年龄,性别.如果把这3个字段存到一个表中,那么任何对person的查询都会将她们全查询来.这是面向对象思想.如果

请教,sql能不能设置一列,自动统计另一张表每个数据的个数?

问题描述 请教,sql能不能设置一列,自动统计另一张表每个数据的个数? 请教,sql能不能设置一列,自动统计另一张表每个数据的个数? 例如: 表a id(部门),zw(职务),name(姓名) 人力部 经理 张三 人力部 副经理 李四 人力部 副经理 王五 开发部 副经理 柳柳 开发部 副经理 琪琪 表b id(公司),zw(职务),sum(数量) 人力部 经理 1 人力部 副经理 2 要在表b的sum中自动统计每个id(部门)有几个经理,几个副经理. 表a变化,表b就自动跟着变,应该怎么做?

sqlite3-sqlite相关-增列方法,给原有的数据库增加几列

问题描述 sqlite相关-增列方法,给原有的数据库增加几列 我在做一个app,原来的数据库有账号和密码,现在需要增加一些功能,扩展原来的数据库,即增加几列,具体应该怎么做? 求大神解答! 解决方案 代码可以操作的,当然现在有设计工具,你直接通过工具改,所见所得 解决方案二: ALTER?TABLE?employee? ALTER?COLUMN?address?varchar(150)?NOT?NULL? 解决方案三: http://blog.csdn.net/az44yao/article/d

listview表格左侧表列多列锁定,不随着滚动条滚动

问题描述 listview表格左侧表列多列锁定,不随着滚动条滚动 listview表格左侧表列多列锁定,滚动条滚动,这两列锁住不跟着移动,只能移动剩下的列? 解决方案 最好是分为2个吧,不然容易造成数据泄露

shell awk-新手求教啊,在shell中将文件中某列相同的行们中的另一列数字取平均值,求附上程序

问题描述 新手求教啊,在shell中将文件中某列相同的行们中的另一列数字取平均值,求附上程序 原文件为f1.txt 111 /root/115 22 /root/1 33 /root/3 34 /root/3 35 /root/3 1112 /root/112 23456 /root/112 期待得到内容为: 111 /root/115 22 /root/1 34 /root/3 12284 /root/112 注:其中34,12284为平均值 解决方案 先分组,然后求和平均. 解决方案二: 先

在oracle中查询xml表列内容显示不全,为什么???

问题描述 在oracle中查询xml表列内容显示不全,为什么??? 建立了一个包含xml列的表,也成功插入了xml项,但是用查询语句显示不全xml的内容,不知道为啥?? CREATE TABLE employees( eid int primary key, einfo xmltype ); insert into employees values(1,XMLType(bfilename('XMLDIR', 'einfoTest.xml'),nls_charset_id('GB2312') ))