在powerquery中创建日期表是使用powerbi过程中一个必不可少的内容(当然,你也可以使用DAX来创建): Power BI创建日期表的几种方式概览 但是很多时候我们进行数据分析时,只有日期表是不够的...,在某些行业中,我们不仅要对年、季度月、周、日等维度进行分析,我们可能还需要对分钟、小时、15分钟、5分钟等进行划分维度并分析。...有朋友会说,在日期表上添加一个时间列就完了,不过,如果你真的直接把时间添加在日期表上,你就会发现组合结果的庞大。假设日期表包括每天一条记录,其中包含 10 年的数据,也即是有3650行数据。...3亿行对于一个维度表来说,太过于huge。哪怕只保留到分钟,仍然会超过 500 万行,很显然是不合适的。 因此呢,不要合并日期和时间表。这两个表应该是两个不同的表,并且它们都可以与事实表建立关系。...添加办法也很简单,在powerquery中添加空白查询,然后打开高级查询编辑器,输入以下代码: ? 点击完成即可。
题目部分 在Oracle中,什么是检查点?如何调优检查点? ♣ 答案部分 (一)什么是检查点? 在Oracle数据库系统中,写日志和写数据文件是数据库中消耗I/O较大的两种操作。...在Oracle 8i之前,数据库发生的检查点都是完全检查点。...需要注意的是,在Oracle 8i之前,由于没有检查点队列(CKPTQ),也没有增量检查点的概念,所以,在发生完全检查点时,DBWn会以一种无序的方式将所有的Dirty Buffer写出到数据文件,这个时候...因为前一次检查点启动以后,标识出了这个起点,然后在第二次检查点启动之前,DBWn可能已经将很多脏块已经写入了数据文件,而假如在第二次检查点启动之前发生实例崩溃,导致在日志文件中,所标识的起点仍然是上一次检查点启动时所标识的...LOG_CHECKPOINTS_TO_ALERT 通过该参数可以将检查点记录到alert日志中。这样做有助于确定检查点是否按所需频率发生。在Oracle 9i之前,此参数为静态参数。
在需要存储较长字符串到数据库中时往往需要使用一些特殊类型的字段,在Oracle中即blob和clob字段,一般而言:Clob字段存储字符信息,比如较长的文字、评论,Blob字段存储字节信息,比如图像的base64...操作场景 主要有三种场景: 仅对已知表中的某一字段写入Blob和Clob字段的值 更新已知表中全部字段的值(均为Blob和Clob字段) 插入数据中带有部分需要插入Blob和Clob字段的数据 总结来看...第二种场景实际上是第一种的重复操作,那么对于第三种,需要十分注意,这里意味着需要向表中插入一行记录,操作有部分差异,在此我们就用第三种场景为例来给出示例。...插入时带Blob和Clob字段 情景再现: 从数据源接收数据,解析完成后产生SQL语句并批量插入数据表,注意,原记录中含有若干个Blob字段(图片编码)和若干个Clob字段(记录信息),其余字段均为一般类型...代码背景 数据源每次发送一个XML字符串非常长,代码端每次解析这个串,解析后会成为 N 条记录,其中每条记录要解析为 M 个字段,其中含有 m 个Blob字段和 n 个Clob字段,现在需要把这 N 条记录插入到数据表中
将一张表的数据插入两外张表 以表B的数据插入表A, 表B有多少符合条件的数据, 表A就插入多少条数据 如表B符合条件有10条数据,表A也会添加10条数据 case 1 两张表的结构完全一样 insert...into tableA select * from tableB case 2, 两张表的结构不一样,只获取表B中符合条件的一些列的数据 insert into tableA (name,age)...select b.studentname, b.age from tableB b where b.id>30 case 3, 两种表的结构不一样,需要获取表B中的符合条件的一些列的数据,还要某些列的特定数据...如需要在表A的列添加老师,学校,值是 ‘陈大文’,‘光明中学’,而表B没有老师,学校列,那么可以以固定值出现在表B输出中 insert into tableA (name,age,teacher,school
在 Oracle 23c 中,数据库表或视图中允许的最大列数已增加到 4096。此功能允许您构建可以在单个表中存储超过之前 1000 列限制的属性的应用程序。...某些应用程序(例如机器学习和流式 IoT 应用程序工作负载)可能需要使用包含超过 1000 列的非规范化表。 您现在可以在单行中存储大量属性,这对于某些应用程序来说可以简化应用程序设计和实现。...这与 Oracle Database 23c 之前版本中的行为相匹配。 可以随时将 MAX_COLUMNS 的值从 STANDARD 更改为 EXTENDED。...但是,仅当数据库中的所有表和视图包含 1000 或更少的列时,才可以将 MAX_COLUMNS 的值从 EXTENDED 更改为 STANDARD。...较旧的客户端版本(Oracle Database 23c 之前的版本)不支持增加的列限制,并且无法访问表或视图中超过 1000 列。 此参数从 Oracle Database 23c 开始可用。
Oracle数据库中自带的4张表: dept、emp、bonus和salgrade是练习SQL查询的经典案例表,本文提供在MySQL中建这4张表的SQL语句 1....创建dept表 CREATE TABLE `dept`( `deptno` INT(2) NOT NULL, `dname` VARCHAR(14), `loc` VARCHAR...创建emp表 CREATE TABLE `emp` ( `empno` int(4) NOT NULL PRIMARY KEY, `ename` VARCHAR(10), `...创建bonus表 CREATE TABLE `bonus`( `ename` VARCHAR(10), `job` VARCHAR(9), `sal` INT, `comm...创建salgrade表 CREATE TABLE `salgrade` ( `grade` int, `losal` int, `hisal` int ) ENGINE
♣ 题目部分 在Oracle中,Oracle 10g和11g告警日志文件的位置在哪里? ♣ 答案部分 作为一名DBA,必须知道告警日志是什么,在何处。实时的监控数据库的告警日志是必须进行的工作。...无论是Oracle 10g还是11g,其告警日志的位置都可以由参数BACKGROUND_DUMP_DEST来查询,只不过在Oracle 11g中位置有所变化。...在Oracle 10g中,告警日志一般在$ORACLE_BASE/admin/$ORACLE_SID/bdump目录下: SYS@lhrdb> SHOW PARAMETER BACKGROUND_DUMP_DEST.../admin/lhrdb/bdump 在Oracle 11g中,告警日志一般在$ORACLE_BASE/diag/rdbms/$DBNAME/$ORACLE_SID/trace目录下: SYS@lhrdb...②视图V$DIAG_ALERT_EXT对应的基表里存储了告警日志的内容,可以根据该视图将告警日志的内容存储在历史表中。③利用SHELL脚本定时将告警日志进行备份,防止告警日志过大而影响系统性能。
♣ 题目部分 在Oracle中,什么是检查点?如何调优检查点? ♣ 答案部分 (一)什么是检查点? 在Oracle数据库系统中,写日志和写数据文件是数据库中消耗I/O较大的两种操作。...在Oracle 8i之前,数据库发生的检查点都是完全检查点。...需要注意的是,在Oracle 8i之前,由于没有检查点队列(CKPTQ),也没有增量检查点的概念,所以,在发生完全检查点时,DBWn会以一种无序的方式将所有的Dirty Buffer写出到数据文件,这个时候...因为前一次检查点启动以后,标识出了这个起点,然后在第二次检查点启动之前,DBWn可能已经将很多脏块已经写入了数据文件,而假如在第二次检查点启动之前发生实例崩溃,导致在日志文件中,所标识的起点仍然是上一次检查点启动时所标识的...LOG_CHECKPOINTS_TO_ALERT通过该参数可以将检查点记录到alert日志中。这样做有助于确定检查点是否按所需频率发生。在Oracle 9i之前,此参数为静态参数。
目部分 在Oracle中,什么是DUAL表?...答案部分 有关Oracle的DUAL表,需要掌握以下几点内容: ① 系统提供的一个DUMMY表,临时显示结果的表,里边的内容没有特定的意义,就是为了存在而存在。...FROM DBA_OBJECTS D WHERE D.OBJECT_NAME='DUAL'; ③ Oracle对DUAL表的操作做了一些内部处理,尽量保证DUAL表中只返回一条记录。...⑤ DUAL在数据库OPEN状态下是一行一列的表,但是在MOUNT和NOMOUNT状态下是一行四列的表。 ⑥ DUAL的常用方式如下所示: a....查看当前日期、时间 SELECT TO_CHAR(SYSDATE,'YYYY-MM-DD HH24:MI:SS') FROM DUAL; c.
♣ 题目部分 在Oracle中,什么是外部表? ♣ 答案部分 外部表是指不存在于数据库中的表。...通过向Oracle提供描述外部表的元数据,可以把一个操作系统文件当成一个只读的数据库表,就像这些数据存储在一个普通数据库表中一样来进行访问。外部表是对数据库表的延伸。...ORACLE_LOADER访问驱动程序只能用于读取外部表中的表数据并将其载入数据库。它使用文本文件作为数据源。ORACLE_LOADER访问驱动程序使用SQL*Loader语法来定义外部表。...ORACLE_DATAPUMP访问驱动程序既可以将表数据从外部文件载入数据库中,也可以将数据从数据库卸载到外部文件中。它使用二进制文件作为外部文件。...操作系统文件在数据库中的标志是通过一个逻辑目录来映射的,所以外部表需要在Oracle数据库“服务端”创建目录,这些OS文件必须放在这些目录中。
♣ 题目部分 在Oracle中, RAC 10g和11g在启动方面有什么差别?...♣ 答案部分 从集群的启动角度来讲,Oracle 10g、11gR1版本的集群是通过/etc/inittab文件中的以下3行代码来启动的。...再来看看Oracle 11gR2版本集群的/etc/inittab文件。...h1:35:respawn:/etc/init.d/init.ohasd run >/dev/null 2>&1 </dev/null 只有脚本/etc/init.d/init.ohasd被调用,之前版本的...根据Oracle 10g、11gR1和11gR2版本的集群管理软件的启动脚本之间的不同,能看到从Oracle 11gR2版本开始,GI启动脚本变成了一个,而且脚本的长度也大大地减少。
♣ 题目部分 在Oracle中,健康检查有哪些方面? ♣ 答案部分 要想对数据库进行全面检查,内容比较多,下面列举部分检查项目: u 数据库的实例是否运行,最近是否有自动重启现象。...u 数据库的表空间大小,是否有表空间快满了,表空间增长是否过快(系统表空间是否增长过快)。 u 是否有业务表创建在了SYSTEM表空间上。审计表是否在SYSTEM表空间上。...情况LAST快照中执行时间最长SQL执行时间最长SQL执行时间最长的SQL报告闪回归档闪回归档配置开启了闪回归档的表闪回归档空间 DG库DG库配置情况DG库运行情况主库DG进程主库standby日志备库日志应用情况...锁查看LOCK锁情况查看谁锁住了谁游标使用情况并行进程完成情况 内存占用查询共享内存占有率PGA占用最多的进程命中率 其它等待事件OLAPNetworkingReplication (六)健康检查结果健康检查结果健康检查结果健康检查过程中脚本产生的错误...& 说明: 有关健康检查详细信息可以参考作者BLOG:http://blog.itpub.net/26736162/viewspace-2129647/ 本文选自《Oracle程序员面试笔试宝典
♣ 题目部分 在Oracle中,表可以分为哪几类? ♣ 答案部分 从理论上来讲,不存在一种能够满足所有读取要求的数据存储方式,所以,Oracle设计了大约6种数据的存储格式,详见下表: ?...从上表中可以看出,没有最好的技术,只有最合适的技术。...& 说明: 有关这几种表类型的更多内容介绍可以参考我的BLOG:http://blog.itpub.net/26736162/viewspace-2140734/ 本文选自《Oracle程序员面试笔试宝典
♣ 题目部分 在Oracle中,如何快速复制表或插入数据?...,在NOARCHIVELOG模式下,默认用了APPEND就是NOLOGGING模式的。...在ARCHIVELOG下,需要把表设置程NOLOGGING模式。...如: INSERT /*+ APPEND */ INTO T1 SELECT * FROM T2; 注意:若在环境中设置了FORCE LOGGING,则以上操作是无效的,并不会加快插入的速度,当然...DATABASE NO FORCE LOGGING; 是否开启了FORCE LOGGING,可以用如下语句查看: SQL> SELECT FORCE_LOGGING FROM V$DATABASE; 本文选自《Oracle
_10g_ee_lhr_10.2.0.1:2.0 init 使用方法 之前也详细说明过一些镜像的使用方法,例如:11.2.0. 23c: https://www.xmmup.com/zaidockerzhongkuaisutiyanoracle...的ASM+DB环境 【DB宝3】在Docker中使用rpm包的方式安装Oracle 19c 【DB宝4】只需2步即可拥有Oracle19c的ASM+DB环境 18c: https://www.xmmup.com.../dbbao10zaidockerzhongzhixu2bujikeyongyouoracle-18chuanjing.html 【DB宝10】在Docker中只需2步即可拥有Oracle18c环境 11g...中只需2步即可拥有Oracle 11g企业版环境(11.2.0.3) 【DB宝14】在Docker中只需2步即可拥有Oracle 11g企业版环境(11.2.0.4) 12.2.0.1: https:/...-12cr112-1-0-2qiyebanhuanjing.html 【DB宝13】在Docker中只需2步即可拥有Oracle 12cR1(12.1.0.2)企业版环境
_12.2.0.3:2.0 init # 对于ASM,① ASM磁盘脚本:/etc/initASMDISK.sh,请确保脚本/etc/initASMDISK.sh中的内容都可以正常执行 # ② 需要在宿主机上安装以下软件..._10g_ee_lhr_10.2.0.1:2.0 init 之前也详细说明过一些镜像的使用方法,例如: 在Docker中只需2步即可拥有Oracle 21c环境 【DB宝10】在Docker中只需...2步即可拥有Oracle18c环境 【DB宝11】在Docker中只需2步即可拥有Oracle 11g企业版环境(11.2.0.3) 【DB宝12】在Docker中只需2步即可拥有Oracle 12cR2...(12.2.0.1)企业版环境 【DB宝13】在Docker中只需2步即可拥有Oracle 12cR1(12.1.0.2)企业版环境 【DB宝14】在Docker中只需2步即可拥有Oracle 11g...企业版环境(11.2.0.4) 【DB宝7】如何在Docker容器中一步一步安装配置Oracle19c的ASM+DB环境 【DB宝3】在Docker中使用rpm包的方式安装Oracle 19c DB
② 该语句只能是在相关数据文件ONLINE的时候才可以使用。...“DROP TABLE XXX;”的情况下,再使用“PURGE TABLE "XXX表在回收站中的名称";”来删除回收站中的该表,否则空间还是不释放,数据文件仍然不能DROP。...数据文件的相关信息还会存在数据字典和控制文件中。 对于归档模式而言,“OFFLINE FOR DROP”和“OFFLINE”没有什么区别,因为Oracle会忽略FOR DROP选项。...10g示例如下: SYS@ora10g> create tablespace ts_dd_lhr datafile '/tmp/ts_dd_lhr01.dbf' size 10M; Tablespace...1、检查是否有数据:SQL> select owner,segment_name,tablespace_name from dba_extents where file_id=6; 2、ALTER TABLE
♣ 题目部分 在Oracle中,数据迁移之可传输表空间(Transportable Tablespaces)是什么? ♣ 答案部分 数据迁移也是面试官经常性问的一些问题。...如果是相同操作系统平台相互导入,那么Oracle 8i及以上版本均可支持,但如果是不同操作系统平台,那么数据库版本至少是Oracle 10g,被传输的表空间既可以是字典管理,也可以是本地管理,并且从Oracle...从Oracle 10g开始,可以实现跨平台传输表空间了。尽管不能支持所有的平台,但已经有很多平台可以支持跨平台的传送。...在执行可传输表空间之前,需要注意以下几点内容: ① 源库和目标库的字符集和国家字符集必须相同。 ② 要传输的表空间不能与目标服务器现有表空间名称重复。...从Oracle 10g开始,无论目标库运行在相同或不同的平台,利用传输表空间都可以将一个表空间传输到相同或更高版本的Oracle库。但是,如果目标库的版本比源库低的话,那么就不能利用可传输表空间了。
♣ 题目部分 在Oracle中,什么是闪回表(Flashback TABLE)? ♣ 答案部分 闪回表(Flashback TABLE)是将表恢复到过去的某个时间点或某个SCN值时的状态。...TABLE TO SCN中的情况: LHR@orclasm > DROP TABLE T_FT_20170617_LHR; Table dropped....LHR@orclasm > SELECT DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER FROM DUAL;---该SCN表中存在索引 GET_SYSTEM_CHANGE_NUMBER...LHR@orclasm > SELECT * FROM T_FT_20170617_LHR;--恢复到没有创建索引之前的SCN A B ---------- ---...STATUS FROM USER_INDEXES WHERE TABLE_NAME='T_FT_20170617_LHR'; no rows selected LHR@orclasm > 本文选自《Oracle
针对这个问题: 检查业务程序,发现程序中存在一个if else判断,如果传入的日期为当天,就不会查h_kns_tran_fund这个表,如果是历史日期才查。...检查表结构,发现这是一个分区表,每天一个分区(例如p20160428),与开发人员确认,当天的业务数据是记录在kns_tran_fund表中,这些数据每天晚上由业务程序插入到历史表h_kns_tran_fund...oracle 10g 统计信息自动收集的原则,是看数据量变更是否超过了10% ,这个变化量可以在dba_tab_modifications视图中查到,如果达到这个阀值,收集统计信息的定时任务运行时就会收集这个表的统计信息...这个刷新周期在9i是15分钟,在10g后变成了一天。 基于以上推测,来做一个实验进行验证: 场景一: 正常插入分区数据,用于对比 ? ?...--这里看到dba_tab_modifications中只纪录了表和分区PEVER的变化情况,却没有分区0503的纪录 --先检查一次分区的统计信息,这里分区0503当前是空值 select table_name
领取专属 10元无门槛券
手把手带您无忧上云