VB编程中数据库里面的数据如何合并datagrid显示时同一日期里面多行,如何处理。。。

VB编程中数据库里面的数据如何合并datagrid显示时同一日期里面多行,如何处理。。。,第1张

有也

 

 

 

 

select name,age,sum(num)

from

(

select name=case when name='CD' then 'ab' else name end,age,num

from 表

) t1

group by name,age

在你第二个查询的基础上进行行转列,如果类型是动态的建议封装

存储过程

。在外层套一个查询,用

max(case

when

then

end

)

as

'列名'这种方士可以实现。

其实数据合并涉及到的是数据库索引问题(excel只是针对表简化的数据库)

把一行作为一条数据,就要提出一个针对不同行唯一的值作为此行数据标记,即索引项。

另一个表可针对此项作为查询关联到此表(可按生物特征人名索引,但如果数据量大可能出现同名),因此需要针对手头数据进行确定。

在确定好之后,可用函数:

直接按查询引用

LOOKUP、VLOOKUP、HLOOKUP

或先查询到行号,然后对应行号引用:

MATCH、INDEX

2019以后,返回值可以是数组,即可以一个公式返回多列内容。

如果引用的表查询不是唯一项,可使用

FILTER 根据条件筛选多条记录 (2021新增),即只要右侧下方留有足够空白位置,可直接显示全部需要结果,即可显示满足条件的多行多列内容

你看看是不是这样的,你数据排版太混乱了

select csrq,qyph,pczl,wm_concat(jyxmmc),wm_concat(jyz),xydj,je from 表名 group by csrq,qyph,pczl,xydj,je

----------补充-----------

oracle跟sqlserver不一样,如果存储过程的话只能返回类似sqlserver中print那种

这样的话,不知道能符合你要求不

表名我起的test

create table test

(CSRQ varchar2(10),

QYPH varchar2(20),

pczl number(10,4),

jyxmmc varchar2(10),

jyz number(10,4),

xydj number(10,4),

je number(10,4))

insert into test values ('2014-5-6','201405070026',1112300,'硅',31260,12800000,9540508544);

insert into test values ('2014-5-6','201405070026',1112300,'碳',34580,12800000,9540508544);

insert into test values ('2014-5-6','201405070026',1112300,'磷',00770,12800000,9540508544);

insert into test values ('2014-5-6','201405070026',1112300,'镍',67010,12800000,9540508544);

insert into test values ('2014-5-6','201405070026',1112300,'铬',25940,12800000,9540508544);

insert into test values ('2014-5-6','201405070026',1112300,'硫',02020,12800000,9540508544);

执行

select 'csrq','qyph','pczl',replace(wm_concat(jyxmmc),',','    '),'xydj','je' from test

union all

select to_char(csrq),to_char(qyph),to_char(pczl),replace(to_char(wm_concat(jyz)),',',' '),to_char(xydj),to_char(je) from test 

group by to_char(csrq),to_char(qyph),to_char(pczl),to_char(xydj),to_char(je)

结果

点击上方菜单的数据的自文本。

2、选中文本后d出菜单。

3、点击下一步后,勾选逗号。

4、点击下一步后,勾选常规,点击完成。

5、将题目里面的数据录入到excel表格中即可。以上就是每个题目选项不一样的调查问卷数据整合在一个表格里面的方法。问卷多个题项合并成一个

*** 作步骤

首先打开SPSSAU,右上角上传数据文件

导入数据后,在页面左侧找到数据处理-生成变量功能。

版权归芝士算切回金答网们站或原作者所已有

配合ctrl或者shift键同时选择多项,选中合并的题目

方行业各反提总流,知律。

右侧看到有生成变量的设置,在里面选择平均值

在从反利建革管基图,回造采风信节话步需。

填写一下新变量名字,我这里给新变量命名为“工作自由度"

完成以上 *** 作后,即可得到新变量,用于后续的研究分析点击上方菜单的数据的自文本。

2、选中文本后d出菜单。

3、点击下一步后,勾选逗号。

4、点击下一步后,勾选常规,点击完成。

5、将题目里面的数据录入到excel表格中即可。以上就是每个题目选项不一样的调查问卷数据整合在一个表格里面的方法需要做差异分析,要把反应一个问题的变量合并成一个,比如说要分析性别对于经济效应感知的影响,经济效应感知用了多个题项进行测量,现在要合并起来才好继续下去,把三A1~B1~C1这些全…… 需要做差异分析,要把反应一个问题的变量合并成一个,比如说要分析性别对于经济效应感知的影响,经济效应感知用了多个题项进行测量,现在要合并起来才好继续下去,把三A1~B1~C1这些全部合并成一个变量。

你这个是什么数据库,先给你一个死板点的方法,但是执行效率高,如果支持动态科目的话,速度会差点。

---------------------------------------------------------------------------------------------------------------------

sql2005下调试

declare @tb table

(

ID INT,

XH INT,

KM NVARCHAR(10),

CJ FLOAT

)

INSERT INTO @tb

select 1,1,'语文',80 union all

select 2,1,'数学',46 union all

select 3,1,'英语',80 union all

select 4,2,'语文',80 union all

select 5,2,'数学',46 union all

select 6,2,'英语',59

select

XH as 学号,

sum(case when KM='语文' then CJ else 0 end) as 语文成绩,

sum(case when KM='数学' then CJ else 0 end) as 数学成绩,

sum(case when KM='英语' then CJ else 0 end) as 英语成绩,

sum(CJ) as 总分,

avg(CJ) as 平均分

from @tb

group by XH

-----------------------------------

执行结果:

学号 语文 数学 英语 总分 平均分

1 80 46 80 206 686666666666667

2 80 46 59 185 616666666666667

我现在身边没有 数据库环境 这个是我以前写的SQL

你看一下,修改一下就可以了

Oracle分组查询用逗号分隔结果SQL语句

表一:

学号 姓名

1 张三

2 李四

3 王五

。。。。

表二:

学号 选修课程

1 语文

1 数学

2 英语

2 语文

3 数学

3 英语

3 历史

。。。。。

要求查处结果

学好 姓名 选修课程所有课程名称以,隔开

1 张三 语文,数学

2 李四 英语,语文

3 王五 数学,英语,历史

;

create table a_lyh_test

as

select 1 as "学号" , '张三' as "姓名" from dual

union all

select 2 as "学号" , '李四' as "姓名" from dual

union all

select 3 as "学号" , '王五' as "姓名" from dual

;

create table b_lyh_test

as

select 1 as "学号" , '语文' as "选修课程" from dual

union all

select 1 as "学号" , '数学' as "选修课程" from dual

union all

select 2 as "学号" , '英语' as "选修课程" from dual

union all

select 2 as "学号" , '语文' as "选修课程" from dual

union all

select 3 as "学号" , '数学' as "选修课程" from dual

union all

select 3 as "学号" , '英语' as "选修课程" from dual

union all

select 3 as "学号" , '历史' as "选修课程" from dual

;

select f"学号"

,f"姓名"

,ltrim(max(sys_connect_by_path(f"选修课程",','))

keep (dense_rank last order by fpnum),',') as "选修课程"

from

(

select t"学号"

,t"姓名"

,t"选修课程"

,row_number() over(partition by t"学号" order by t"姓名") as pnum

,row_number() over(partition by t"学号" order by t"姓名")-1 as lnum

from

(

select a"学号",a"姓名",b"选修课程"

from a_lyh_test a

,b_lyh_test b

where a"学号" = b"学号"

) t

) f

group by f"学号",f"姓名"

connect by flnum = prior fpnum and f"学号" = prior f"学号"

start with fpnum = 1;

以上就是关于VB编程中数据库里面的数据如何合并datagrid显示时同一日期里面多行,如何处理。。。全部的内容,包括:VB编程中数据库里面的数据如何合并datagrid显示时同一日期里面多行,如何处理。。。、sql server同一个表中两行数据合并为一行。如表A: name age num ab、mysql 多行数据合并一行(根据主键)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10092199.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存