有时会需要sql结果集行转列的功能 但是有时需要动态列 而且展示的数据部分是字符串 用上面的方法就不好使了 比如想把下面图片中 的 上半部分 行转列成 下半部分 sql 如下 但是因为是exec执行 select into 不行 insert select 做起来也比较麻烦只能用到最后的返回结果 如 ...
分类:
数据库 时间:
2018-07-18 11:54:21
阅读次数:
176
一.原数据: 二.转换后(动态拼接SQL): ...
分类:
数据库 时间:
2018-06-30 20:57:25
阅读次数:
182
之前sqlserver的行转列, 可以用pivot来写. 参考这篇文章 https://www.cnblogs.com/gaizai/p/3753296.html 根据自己项目实际表,改成这样 但是在MySQL的存储过程要怎么写呢? 这就花了我一天时间,因为不熟悉MySQL 参考这篇文章https: ...
分类:
数据库 时间:
2018-06-18 13:58:59
阅读次数:
308
用过Mysql的都知道她有一个很好的实现行转列功能的函数group_concat函数,非常方便 点击(此处)折叠或打开 SELECT * FROM group_test; SELECT id, GROUP_CONCAT(sub_id) FROM `group_test` GROUP BY id; 点 ...
分类:
数据库 时间:
2018-06-11 22:18:37
阅读次数:
196
行列转换包括以下六种情况: *列转行 *行转列 *多列转换成字符串 *多行转换成字符串 *字符串转换成多列 *字符串转换成多行 下面分别进行举例介绍。 首先声明一点,有些例子需要如下10g及以后才有的知识: a、掌握model子句 b、正则表达式 c、加强的层次查询 讨论的适用范围只包括8i,9i, ...
分类:
数据库 时间:
2018-06-02 22:18:55
阅读次数:
176
Oracle12c 数据库GS实例时需要使用新驱动,避免制单出现获取不到正确凭证编号内码的问题。 Oracle12c 会产生大量的隐藏表,部分ddl语句会报错。 Oracle12c 删除了VM_concat函数, 需要手工创建,解决供应链、新应收应付行转列函数报错(建议使用新函数来重写代码,Orac ...
分类:
数据库 时间:
2018-05-31 14:46:01
阅读次数:
295
1. 创建测试表 2. 插入数据 3、 实现: 4. ORACLE 数据库可以用 函数实现: ...
分类:
数据库 时间:
2018-05-30 21:30:29
阅读次数:
232
现有一表,原始数据如下: 现在需要查询出如下结果(条件是:[80,~]优秀,[60,80)及格,[~,60)不及格): 先用UNPIVOT对原始表进行转换,列转行 select * from CB_SHANGCICB UNPIVOT (cj for kc in ("语文","数学","英语")) , ...
分类:
数据库 时间:
2018-03-22 17:41:06
阅读次数:
245
一、多行转成一列(并以","隔开) 表名:A 表数据: 想要的查询结果: 查询语句: PS:STUFF语句就是为了去掉第一个【逗号】 附STUFF用法:(从原字符的第二个开始共三个字符替换为后面的字符) 查询结果:aijklmnef 二、一列转成多行 表名:tb 表数据: 想要的结果: 查询语句: ...
分类:
数据库 时间:
2018-03-21 11:28:06
阅读次数:
214