首页 > 数据库 >Oracle 列传行UNPIVOT

Oracle 列传行UNPIVOT

时间:2023-11-02 14:37:36浏览次数:34  
标签:列传 列名 NULLS DEPT UNPIVOT USER Oracle ID

语法:
UNPIVOT(新列名 FOR 聚合列名 IN (对应的列名1…列名n ))
INCLUDE | EXCLUDE NULLS 子句参数可以控制在结果集中是否保留值为NULL的行,默认为EXCLUDE NULLS,即去除空值行。
--列转换行UNPIVOT
SELECT * FROM 
(SELECT A.*,B.DEPT,B.SECTION,B.LZ,B.LZ_DATE 
FROM GC_DWT_OA.IMP_EMP_SCHEDULE_LIST  A
RIGHT JOIN  GC_DWT_OA.IMP_EMPLOYEE_DEPT B ON A.USER_ID=B.USER_ID
WHERE 1 = 1
AND A.USER_ID IN ('A0002719','A0002277','A0002245','A0002218') 
AND B.DEPT='MFG'
AND ATTENDANCE_PERIOD='202310'
)A
UNPIVOT INCLUDE NULLS (Value FOR Attribute IN 
(DATE26,DATE27,DATE28,DATE29,DATE30,DATE31,DATE01,DATE02,DATE03,DATE04,DATE05,DATE06,DATE07,DATE08,DATE09,DATE10,DATE11,DATE12,
DATE13,DATE14,DATE15,DATE16,DATE17,DATE18,DATE19,DATE20,DATE21,DATE22,DATE23,DATE24,DATE25))

 

标签:列传,列名,NULLS,DEPT,UNPIVOT,USER,Oracle,ID
From: https://www.cnblogs.com/bellin124/p/17805306.html

相关文章

  • sqlserver与Oracle建立连接,查询oracle中的数据(navicat版)
    1,打开navicat选中sqlserver服务器点击其他找到链接服务器(不要选错数据库)2,点击新建链接服务器,如图选着其他数据源,按图填写,程序字符串根据自己情况修改(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.6)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SER......
  • Oracle ORA-01653:无法在表空间中扩展表
    OracleORA-01653:无法在表空间中扩展表在本文中,我们将介绍Oracle数据库中的一个常见错误,即ORA-01653。该错误是由于无法在表空间中扩展表而引起的。我们将解释该错误的原因,并提供一些解决该问题的示例。阅读更多:Oracle教程什么是ORA-01653错误?ORA-01653错误是Oracle数据库中......
  • Jmeter连接Oracle数据库
    1、链接Oracle需要jar包支持,下载地址:https://files.cnblogs.com/files/lymlike/ojdbc6-1.0.rar?t=1698889296&download=true(下载后须将后缀名改为.jar即可使用)2、将下载的jar包放置在jmeter安装路径下:..\apache-jmeter-3.1\lib\ext3、在jmeter的线程组中添加JDBC链接配置JDBC......
  • Oracle DataGuard的架构(面试)
    概述PrimaryDatabase主库处于open状态对外提供服务,用户在PrimaryDatabase上进行操作,操作被记录在联机日志和归档日志中。需要设置loggingforce模式:即使在归档模式下,也可能会有一些有nologging的操作不产生redo,这在DG下是不允许的,因此必须启用数据库强制记录redo。StandbyDat......
  • Docker安装Oracle19c史上最全步骤
    Docker装置Oracle19c史上最全步调 Docker装置Oracle19c装置第一步:下载镜像第二步:创立挂载文件第三步:装置Oracle第四步:衔接Oracle 先容OracleDatabase19c,也就是12.2.0.3,最初在livesql.oracle.com上宣布,是OracleDatabase12c跟18c系列产物的终极版本,因而也是“临......
  • oracle创建表的同义词
    首先,我们要在有这个表的用户下新开一个sql编辑器,为创建同义词的用户授权,GRANTSELECT,UPDATE,INSERT,DELETEON  表名   TO   要建同义词的用户或者简单点,全部授权就完事了!:GRANTALLON  表名   TO   要建同义词的用户 然后在要建同义词的......
  • Oracle数据库常用命令
    数据库初始化命令表空间相关建立表空间--建立临时表空间CREATETEMPORARYTABLESPACEtemp_name--创建名为temp_name的临时表空间TEMPFILE'D:\app\super\oradata\oracle\temp_name.DBF'--临时文件SIZE50M--其初始大小为50MAUTOEXTENDON--支持自动扩展NEXT......
  • Oracle转为Mysql的数据结构差别
     Oracle的表空间相关函数TABLESPACE"SYSTEM"LOGGINGNOCOMPRESSPCTFREE10INITRANS1STORAGE(INITIAL65536NEXT1048576MINEXTENTS1MAXEXTENTS2147483645FREELISTS1FREELISTGROUPS1BUFFER_POOLDEFAULT)PARALLEL1NOCACHEDISABLE......
  • oracle 编码
    select*fromnls_database_parameters;select*fromnls_instance_parameters;select*fromnls_session_parameters;  ......
  • oracle数据库表的一些基本处理
    oracle数据库的简单使用语法用户的数据实际上是存在数据库的表中,所以当我们要向数据库中存放数据时,必须先创建表。/*创建语法createtable[<模式名>.]<表名>(<字段1><类型>[约束条件],<字段2><类型>[约束条件],…)[tablespace<命名空间>];*/–创建一个班级信息表......