从Oracle 表格行列转置说起第1/2页
2 50
NO MON TUE THR
2 -10
2 42 -10 50
FROM (SELECT NO,DECODE(DAY,2,MONEY,'') DAY2,
2 -10 TUE
SELECT NO, MAX(DAY1) MON, MAX(DAY2) TUE, MAX(DAY3) THR
FROM TEMP
3.行列转化在表单内数据量较大的情况下消耗较大
3
1 23 MON
3 100 8
FROM TEMP)NO MONEY DAY
3 100 undefined
1.DECODE缺省值设置
GROUP BY NO;表结构稳定:DAY增加新值只需增加记录,无需新增新列!
2.GROUP BY时,数据冗余带来的多行合并。
SELECT NO,MONEY,
2 50 THR
1 23 43 0
------------------------
1 23 43 -45
1 23
结果:
SQL:
2.列缺省值设置(DAY值为8的显示为'undefined')
1 -45
1 43
DECODE(DAY, 1, MONEY,0) DAY1,2.按NO字段分组,并更改列名
3 0 0 0
2 42 MON
下一页 decode()函數使用技巧SQL:
原因:
------------------------
优点:
3
DECODE语法如下:decode(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值)
DECODE(DAY,1,'MON',2,'TUE',3,'THR','undefined') DAYDECODE(DAY, 2, MONEY,'') DAY2,
结果:
1.扫描目标数据时间开销大。
DECODE(DAY, 3, MONEY,'') DAY3NO DAY1 DAY2 DAY3
2 50 3
2 42 -10 50
如果缺省值由''(两个单引号)改为0,即SQL:
FROM TEMP)重难点归纳:
1 23 43 -45
咱们一步步来实现:
FROM (SELECT NO,DECODE(DAY, 1, MONEY,'') DAY1,
1.运用DECODE转换行为列
SQL:
结果:
1 -45 THR
SELECT NO, MAX(DAY1) MON, MAX(DAY2) TUE, MAX(DAY3) THR
结果如下(所有值为负与空值都被赋为0):
SELECT NO,
1 43 TUE
DECODE(DAY,1,MONEY,'') DAY1,DECODE(DAY, 3, MONEY,0) DAY3
NO MON TUE THR
DECODE(DAY,3,MONEY,'') DAY32 42 0 50
3
GROUP BY NO;FROM TEMPNO MON TUE THR
DECODE(DAY, 2, MONEY,0) DAY2,2 42
为了符合阅读习惯,最终报表希望是如下格式:
相关热词: oracle
本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!
本文地址: https://v30.fanwenzhu.com/sql/oracle/2953.shtml
相关文章
热门TAG
win10 ecshop 主机 阿里云 解决 配置 C# C++ 解析 SQL语句 命令 Go语言 方法 CSS3 HTML5 CSS win7 MSSQL 服务器配置 IIS7.5 IIS7 IIS6 IIS CentOS 7 Linux oracle数据库 oracle phpcms discuz discuz教程最新文章
-
是因为scan的IP问题补占用
时间:2021-01-20
-
还你一个干净的model 2、功
时间:2021-01-20
-
既然 ROWNUM 列并不是真实存
时间:2021-01-20
-
Real Application Clusters
时间:2021-01-20
-
在tools-preferences-connection(
时间:2021-01-20
-
Windows Sever 2012下Oracle 12c安
时间:2021-01-10
-
Oracle安装监听器错误的解
时间:2021-01-07
-
oracle远程连接服务器数据
时间:2021-01-07
热门文章
-
Oracle存储过程编程详解
时间:2020-12-07
-
Azure Queue Storage 基本用法 Azure Storage 之
时间:2020-12-26
-
win10下oracle 11g安装图文教程
时间:2020-12-25
-
oracle 数据库学习 基本结构介绍
时间:2020-12-13
-
Azure File Storage 基本用法 Azure Storage 之 F
时间:2020-12-26
-
windows使用sqlpus连接oracle 数据库的教程图
时间:2020-12-25
-
Window下Oracle Database 11g 发行版2安装教程
时间:2020-12-29
-
Oracle解锁的方式介绍
时间:2020-12-14
-
Oracle 12c Study之Installer Oracle
时间:2021-01-06
-
linux下oracle设置开机自启动实现方法
时间:2020-12-13
