自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 收藏
  • 关注

原创 固定资产折旧报表

- 称分为设备类、总务类、信息类、其它类。FROM FA_PROPERTY_CARD --这是资产卡片主表,它已经包含了表中的4项主要信息。累计折旧:到目前为止,一共折旧了多少的额度(如果为空,则说明设备已经全部折旧完毕,此时的净值也为0)此外由于各个管理科室管理的资产类型不同,在编写时需要保证所展示的物资是该管理科室所管理的仓库。设备原值、月折旧额、累计折旧、净值,并且要求以三大管理科室分类,来制作3张报表。怎么知道三大管理科室各自管哪个仓库类型的物资?2.找到管理科室和使用科室,并连接组织架构表。

2023-08-17 14:50:47 193

原创 GBK、UTF-8、UTF-32、乱码原因

由于计算机是由美国人发明的,所以首先出现的字符集是ASCII码集,因此现在所有的字符集也都兼容了ASCII码字符集,这也就是为什么英文基本不乱码的原因之一。于是出现了UTF-8,英文字符占1个字节,中文字符占3个字节,也有说法是3-4个字节,这样既那囊括了全球字符,又提供了可变类型的字符长度:1、2、3、4。为了统一全球字符,出现了UTF-32:它让所有的字符都占4个字节,不足四个字符的用00000000来补齐。这样虽然解决了全球字符集统一问题,却带来了一个新的问题:UTF-32内存浪费严重。

2022-10-23 19:42:24 3194 1

原创 Kettle+Excel+Windows定时调度=?

这4个过程的KTR分别保存后,放在一个JOB中,即形成唯一JOB。甲方下发的上游系统文件中:以两张表(Excel)为例进行导入。本篇文章主要讲解有关数据进入到ODS这个过程和它的定时调度。使用Kettle进行数据的抽取完成主要过程。在Oracle建立两个用户:ODS、HIS。这样一来HIS、ODS都有了各自的表和数据。

2022-10-22 15:30:54 322

原创 finereport基础(八)

(1)从预期我们可以看到该报表是使用决策报表为基础而绘制,其余的数据等样式需要我们进行配置。我们之前讲了许多类型的报表,同时掌握了许多关键点的使用。今天来看最后的报表:(决策报表)主子(普通报表)报表。3.选择分类、系列名、值、汇总方式。我们的帆软基础教程到此就结束了。2.为该可视化图形添加数据集。4.标签将文本改为系列名。绝对画布块、tab画布块。

2022-10-12 10:23:40 272

原创 基础表(二)分区表

(1)范围分区 (2)列表分区 (3)散列分区 (4)组合分区。顾名思义,分区表也是一张表,分区表的原理是将大表、大索引在物理上进行分开存储在不同的表空间。当表中的数据不断增多,在拥有索引优化的前提下依然不能很好的提升查询效率,就引入了分区表。(1)改善表的查询性能:在对表进行分区后,用户可以指定分区进行查询,减少单次查询时间。(4)提高数据安全性:将数据存放在不同的分区,减少了该表中数据同时被损坏的可能性。(2)表中包含原始数据,新的数据会被分到其他分区。

2022-10-10 14:17:46 1465

原创 基础表(一)临时表

(1)oracle为了保证多个用户操作的并发性和独立性,对一张表读取的不同用户,oracle为每个用户分配了独立的临时段(temp segment),这样就避免了多个用户在操作时同一张表时产生交叉.用于保存回话或者事务产生的中间结果,只对当前会话可见,其它任何会话无法查询临时创建的表。(2) 当某些数据需要被频繁操作并且会产生不需要保存的中间数据时,需要建立临时表。临时表分为两类:事务临时表 transaction;在事务结束时,若选择commit则临时表中的数据会被保留,否则被清除。

2022-10-07 17:59:34 899

原创 finereport基础(七)

故当我们对填报报表属性进行设置: 内置sql 并将单元格的属性值指定给该表的合适的字段(并且保证在数据类型合适、不违反约束等前提下),我们可以想到这样的程序,通过变量赋值来完成自动的插入。(3)可自己设置操作:插入行/删除行来进行操作,也可以在报表web属性中-------填报页面设置添加控件----删除/增加行。(1)数据校验类似于约束,用来对输入的数据进行规范化检测,若不符合则不允许插入或修改。今天看新的类型,填报类型,可以实现数据插入、更新、删除。可以看到有三种预览:分页预览/填报预览/数据分析。

2022-10-07 17:54:51 359

原创 finereport基础(六)

我们可以看到,这次添加了一个新的组件部分,在进行编辑后,需要首先在模板中------添加模板参数,只有在添加参数后才能为控件添加参数。控件中的销售员姓名传给id---id传给子表---子表查出这个销售员的所有信息并统计后展示。在为此控件选择下拉框控件后,通过数据字典为下拉框设置可选择的数据,即设置了相应需要的控件。两张子表都设置了雇员ID=${ID},这个ID参数被传给了插入报表的参数。前面讲了主子报表,今天我们在主子报表的基础上加上对控件的使用。而插入报表的参数又是通过设置$销售员来传递的,也就是说。

2022-10-06 19:25:29 126

原创 finereport基础(五)

(3)分页,前面说了,只想让一页展示一笔订单的信息,所以需要行后分页,但需要空一格(说实话,我不知道为什么要这样,这相当于是,这个工具内部的一些代码逻辑,在学习帆软的过程中,有很多不解,但我并没有像以前那样,去钻研,因为解决这些问题的逻辑涉及到了工具本身的设定,不容易解释),如果不空一格,就有可能将产品信息未完全展示,所以空一格很有必要,当然由于每页都要让这个分页生效。(2)父子格的设置:递进依赖,子表的产品id依赖主表的产品id,子表的单价依赖于子表的产品id,以此类推。所以这个空行也需要添加父子格!

2022-10-01 19:19:06 1118 1

原创 finereport基础(四)

(2)由于要求每页都是这样的框架,所以不仅要设置后N行、前N行固定,还要设置父子格关系,例如销售员应跟随地区。(1)设置好框架后 首先是序号的设置:这里的序号需要使用&单元格来跟随其他单元格,并且需要设置父子格关系。分页报表是为了在分好组的基础上设定每张展示多少条数据,所以既要考虑分组的兼容性、也要考虑分页的实施。其次是页内统计,统计一页的数据需要用花括号括起来统计即({sum单元格})而不是sum(单元格)。数据设置:地区设置为分组 销售员设置为列表。设置分页依然需要公式并选择行后分页。

2022-09-29 20:59:50 618

原创 finereport基础(三)

(2)设计好销量后,需要设计统计,由于它统计的是跟随地区,所以需要让地区统计函数让地区作为它的父节点,这样就可以满足每个地区统计的要求。其中有很多选项,在没有进行高级自定义设置前,地区会自动分组,这时可以更改其他设置,如不设置分组,而是列表。(1)无法再使用公式进行求和,因为没有可以参考的单元格,故直接使用汇总,而不是分组,进行求和。(1)首先是出现了斜线单元格,这个设置可以在单元格的属性中找到,可以看到可插入的内容很多。(3)销量,即C3字段即不能横向扩展也不能纵向扩展,可以选择不扩展,让工具自动匹配。

2022-09-29 12:10:58 607

原创 finereport基础(二)

(2)分页:在其他中设置分页以进行分割,可以想象,如果将数据集的数据全部导出,但由于每一页的大小是固定的,就肯定会出现报表的头和身体分离的情况,所以这里我们可以设置一张页面的大小来控制分页。(1)首先是去除了有关运货费的·设置,如颜色、排序,现要求将运货费分类以不同的颜色标注。(1)设置格式:之前都是规律的网状单元格,但是这种自由报表需要合并单元格。工具模块:单元格属性------扩展-----扩展后排序。正确的选择不同数据集的字段后,对联系人进行过滤。工具模块:单元格属性-------形态。

2022-09-28 21:26:09 184

原创 finereport基础(一)

文件数据集:文件数据集,例如从oracle中导出文件(.excel、.dmp、.txt等等)再通过选择文件来导入帆软,也可以设置文件参数来同时导入多个文件,通过参数控制读取哪个文件。其中的数据集是用户操作数据的媒介板块、报表主题即主要操作场景、而右方的各种设置则是增加报表的可视化程度。其次是单元格的设置,边框的样式、颜色、背景,再者是对齐,顾名思义,对齐即水平对齐、垂直对齐、是否换行等等。树数据集:类似于树状结构的数据集,可以清楚的反应数据之间的父子关系,例如用在员工的上下级关系表上。帆软是一个报表工具;

2022-09-28 17:02:07 3283

原创 ETL面试题

15.对于一个有大量数据的表,提高查询速度的方法有哪些?/或者请说sql优化的方式有哪些。34.什么情况下使用索引,建模过程表内哪些字段加索引(如何看一个sql语句有没有走索引)33.把b表的数据更新到a表中,有了就更新数据,没有就插入数据,用什么命令。41.简单说下全量表、增量表、快照表、拉链表各自特点和优缺点以及适用场景。29.在kettle中做了什么,做过复杂的转换吗。37.做过多少表,哪些表,有哪些字段。31.什么是数据仓库,有什么特点?35.ods层的数据清洗有哪些内容。

2022-09-21 11:08:08 1532

原创 kettle转换(一)

并赋权:grant select any table to new_user_name。在创建时记得分配 connect和resource权限。其实工具是通过固定的按钮来调用sql语句来操作数据库。即是转换过程输入16行,读取16行,写入16行。因为输出是一张表中,所以需要对比接受流和输出流。并设置unlimited space。用户可以先创建一个数据库用户来操作。这里的输出要求和特点比较多。一.选择连接方式并配置。字段的对应,都可以调整。二.做数据抽取与转换。

2022-09-19 21:10:47 604

原创 linux(六)脚本应用

linux(七)脚本应用

2022-09-07 14:38:19 219

原创 LINUX(五) 脚本基础

linux(五)脚本基础-流程控制

2022-09-06 15:32:42 443

原创 linux(四)脚本基础

linux 脚本基础(一)

2022-09-05 17:06:53 1439

原创 LINUX(三)其他命令

文本编辑命令

2022-09-01 21:10:14 172

原创 LINUX(二)系统命令

系统命令

2022-09-01 16:12:50 231

原创 LINUX(一) 基础命令

linux基础命令

2022-08-25 15:15:30 288

原创 PLSQL触发器

在DML触发器中,由于被INSERT、UPDATE、DELETE 所引起,分别对应三种布尔类型的数据:INSERTING、UPDATING、DELETING。触发器作为数据库对象之一,并不像函数或是存储过程那样被调用,而是由特定的语句所引起/触发所执行的.顾名思义,当满足触发器执行的条件后,不真正执行用户选中的DML语句转而执行触发器中的逻辑代码。--由于触发器没有参数,所以不需要接受,同时需要定义对应触发器的属性特点。--创建一张表,字段(id-主键,name-普通字段),--触发的对象是一整张表。...

2022-08-11 19:59:11 2455

原创 PLSQL函数

在PLSQL中可以自定义函数 比如在游标中的B2C布尔函数 有效的让我们认识到了三种参数的使用。--可以是基本数据类型、PLSQL数据类型(行类型,引用类型)、游标 、table类型。在PLSQL中 函数通常与存储过程共同作用,以减少重复工作耗费的精力和时间。除了第一阶段在Oracle里学到的数值函数、日期函数、字符函数外。函数在数学中通常是指可以一对一,多对一,但是不能一对多的表达式。在PLSQL中函数作为一个具有返回值和可接受参数的程序体。函数本身分为单行函数和组函数。--实例:编写一个函数。.....

2022-08-11 19:57:37 1594

原创 PL/SQL 存储过程

有参又分为 in、out、in out 三种 分别代表传递给储存过程,从储存过程传出,以及对存储过程传入和传出。3.3 IN OUT类型--同时满足向存储过程输入和存储过程向外输出。存储过程是一个要被预编译的代码块,一次编译,多次调用。由于调用的代码较少,减少了网络流量,降低了网络负担。2.1有参、存储过程调用存储过程。二.存储过程1.无参存储过程。存储过程分为有参和无参两种。--不是有效函数或过程名。4.存储过程调用游标。...

2022-08-09 17:24:24 2261

原创 PL/SQL 游标

一次会获取多行数据,这个数据可能是几百,几千甚至更多行。通过对游标遍历,保存数据库查询数据,方便下次使用找到需要的部分数据,这样的效率远高于SELECT 语句。这样影响我们对数据的使用效率 就这样引入了一个能一次输出一行的数据库访问机制:游标。缺点:由于游标也是一种指针便利类型的机制,当数据被全部读取时,效率较低。%ISOPEN:游标是否打开 默认FALSE 若打开则变为TRUE。%ROWCOUNT:返回记录的行数,默认是0。--准备工作 B2C函数。4.关闭游标,释放资源。1.游标的四种状态代码。....

2022-08-07 08:58:09 317

原创 JAVA入门基础(一)

首先要清楚Java的语言类型,我们知道C,C++是编译型语言,并且编译C的过程比较繁琐,涉及到很多过程的转换,同时编译型语言与特定的系统有关,脱离环境可移植性较差.在java刚出来的时候,很多人不看好,因为解释性语言的效率低下,但oracle和sun公司通过不断地优化,java在原有可移植性强的优势上,逐渐弥补了效率短板的不足。如果一个变量要被定义为全局变量,则应该被定义为静态变量,即这个变量被类的所有对象共享,没有被静态修饰的变量,属于类的特殊描述。...

2022-08-06 15:37:43 65

原创 PL/SQL 异常处理

基于我在学习ORACLE的第一阶段ORACLE和PL/SQL所提供的异常大都能帮助我们解决问题(当然也有一些时候无法通过异常所给的提示来解决问题)上述我在这里定义的异常是在工具被开发时就已经被预定义过的异常它们已经被标好了对应的编号和对应的异常信息。除此之外还有一类异常他们已经被工具分类统计了但是并没有对应的编号和信息这类异常被称为非预定义异常。由于PL/SQL的语法非常简单所以语法带来的编译错误总能轻松的解决.在运行时发生的错误和编译时发生的错误都被称为异常.这类异常的触发方式是。...

2022-08-02 16:37:36 450

原创 PL/SQL 流程控制

所以在when做判断的时候跟的是EXP而不是VALUE。前情提要casewhen语句没什么作用(自我感觉)在PL/SQL中也只有FOR才可以实现多层重复循环。所以在when后面判断时不能跟表达式只能跟值。似乎不论是哪种编程语言的循环都会涉及到FOR循环。在这种格式中由于CASE后面没有跟变量名。上述这种格式在case后面跟了变量名。就是普通的逻辑判断代码,没什么可说的....

2022-08-01 22:11:40 119

原创 PL/SQL 数据类型与基本输出

PL/SQL是使用sql的数据库编程语言,也是面向程序的程序语言相比于SQLsql是声明语句而PL/SQL是程序语言(有执行体、循环体、结构体)同时PL/SQL不于数据库进行交互用于编写程序、触发器、函数、包2.PLSQL数据类型1.PL/SQL数据类型变量常量生命周期--变量数据类型分类6种numbervarchar2date--剩余三种是新类型引用类型--记录型自定义型--行记录型其次是常量constant。...

2022-07-26 17:37:51 2457

原创 sql总结(二)

关于数据去重的大致思路都是以分组为提取基础,以rowid作为重复数据的唯一标识。我的emp表原本只有16条,现在添加了三个重复数据,重复empno=7369;这里需要注意的是,如果用开窗函数则需要额外添加表的字段。2是要求用select查出所有的数据且不重复。执行后显示'三行删除,耗时0.002秒'3.是要求用删除语句删掉所有多余的数据。数据去重也是工作中会用到的sql之一。开始验证.首先将EMP表的主键消除。注意三个问题的出发点不同。消除后添加重复数据即可。可以看到主键被删除了。...

2022-07-22 09:54:10 71

原创 ORACLE PIVOT 行列转换 DDL语句 数据库范式

先来说这个pivot函数pivot(fuc(c1) for c2 in(v1,v2,v3))解释: pivot用于行转列,其中fuc是聚合function,c1即为column_name1,c2为被转换的字段,v1,v2,v3则是要根据被聚合的字段和输出列表数据的转移,即v1,v2,v3为输出结果.行转列有两种方式 它们的本质都是分组方式一:select +case when +group by方式二:select+pivot例:

2022-07-14 16:56:36 384

原创 伪列与开窗(分析函数) oracle

伪列,顾名思义,虚拟化的列,即表中的列1.生命周期伪列rownum的生命周期在查询中开始自动生成于from直到select完全形成此序号,用户一般无法更改,即伪列存在的前提是先有结果表.值得注意的是,伪列的生成机制当我们正常查询rownum时返回的是排好序的值,但是如果加上order by 将会打乱顺序 如图所示,这是因为rownum先给定序号再排序,将序号确定后再根据deptno进行排序就会打乱rownum.而我们先排序后再定rownum就不会乱序值得一提的是:伪列由结果集的生成而生成,排序不会生成新的结

2022-07-09 11:33:12 304

原创 sql总结(一)

根据oracle官方的说明,有如下隐式转换:1. 对于INSERT和UPDATE操作,ORACLE会把插入值或者更新值隐式转换为对应字段的数据类型。2. 对于SELECT语句,ORACLE会把字段的数据类型隐式转换为变量的数据类型。3. 当处理数值时,ORACLE通常会调整精度和小数位,以实现最大容量。在这种情况下,由此类操作产生的数字数据类型可能与在基础表中找到的数字数据类型不同。4. 当比较一个字符型和数值型的值时,ORACLE会把字符型的值隐式转换为数值型。5. 字符值或NUMBER

2022-07-07 16:25:42 255

原创 Oracle 多表连接 详细分类

用单个select语句从多个表中查询相关的数据 被称为多表连接查询oracle 11G对于1992旧标准和1999新标准 都支持当我们对员工表(m条数据)部门表(n条数据)同时做全部查询时,会出现笛卡尔积,出现m×n条数据,这不是我们想要的,于是等值查询应运而生在父子表的关系上,用=来连接两个表的两个字段的多个字段或多个表的多个字段在等值查询里,N个表连接需要N-1个等值条件查询teacher表、student表、course表中的数据分别如下:可以看到course表作为父表,其他两个表作为子表

2022-06-29 16:06:41 248

原创 子查询类别详细分类与规则

一.union使用union可以将两个结果集合并成一个结果集,select ...unionselect...当使用union时,两个结果集重复的数据将只出现一遍而如果使用union all时select ...union allselect...union all 会将所有的数据进行拼接,包括重复的数据会多次出现此外 在使用查询语句来创建表时,只会复制表的结构但是并不会复制主外键二.子查询1.子查询的分类及其作用什么是子查询、主查询,哪个是先被执行的语句?为了给主查询提供数据源,而首先被执行的一个查询被称

2022-06-28 16:25:40 515

原创 oracle函数

以下所有内容仅供个人记录,可能会有错误,恳请指正。一.new fuction今天一共学了不少新函数,我将函数的结构参数与方法,注意事项记录在例题中。数值函数1.员工总工资,平均工资,四舍五入,保留小数点后2位SELECT ROUND(SUM(SAL),2),ROUND(AVG(SAL),2) FROM EMP;ROUND函数可以进行四舍五入运算 ROUND(NUMBER,INTEGER)其中INTGER表示小数点左右保留的位数。当INTEGER > 0时保留小数点后int位当INTEGER

2022-06-28 08:42:37 798

原创 2022.6.24 Q AND A

1.聚合函数与空值目前学到的聚合函数 有 count(),sal(),max(),min(),avg(),当这些函数查询全空表时,只有count会返回 0 而其他的都返回空 即 null这个结果并不难理解 除了count(字段)这些函数都会忽略掉NULL值进行计数外,其他的函数也会忽略空值进行聚合计算,而只有count(1)和count(*)不会忽略空值进行计数也就是说count(空字段) = 0 忽略空值聚合函数(空字段)= NULL 忽略空值count(*),count(1)不受影响同为忽略空值

2022-06-26 21:19:35 93

原创 2022.6.23 下午 Q AND A

1.sysdate方法与trunc、to_char的应用 sysdate是用于返回系统当前的时间: select sysdate from dual;需要注意的是,当我们在查询语句中使用sysdate时,获取到的数据类型是日期类型,且sysdate返回的格式是yyyy/mm/dd hh24/mm/ss。当我们需要某些特定的时间时,需要使用to_char和trunc与sysdate搭配使用(共10种)年:yyyy select to_char(sysdate,'yyyy') from dual;月......

2022-06-24 14:44:38 101

原创 2022.6.23上午 Q AND A

以下所有内容仅供个人记录,可能会有错误,恳请指正。1.case when作为 很熟悉的一种类型判断语句在orcale中的格式之一为:case condition1/expr1成立 when result1condition2/expr2成立 when result2condition3/expr3成立 when result3.......else default result(这里要注意 所有的result的数据类型都要相同,否则报错)end这只是 case when的格式,具体与查询语句连接的格式如下:

2022-06-23 11:52:09 153

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除