自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 拉链表

0x00 前言本文将会谈一谈在数据仓库中拉链表相关的内容,包括它的原理、设计、以及在我们大数据场景下的实现方式。全文由下面几个部分组成:先分享一下拉链表的用途、什么是拉链表。 通过一些小的使用场景来对拉链表做近一步的阐释,以及拉链表和常用的切片表的区别。 举一个具体的应用场景,来设计并实现一份拉链表,最后并通过一些例子说明如何使用我们设计的这张表(因为现在Hive的大规模使用,我们会以Hive场景下的设计为例)。 分析一下拉链表的优缺点,并对前面的提到的一些内容进行补充说明,比如说拉链

2020-12-03 16:02:58 426

转载 postgresql sql 命令汇总

部分VI.参考这份参考中的条目意欲提供关于相应主题的权威、完整和正式的总结。关于使用PostgreSQL的更多信息(以叙述、教程或例子的形式)可以在本书的其他部分找到。见每个参考页面上列出的交叉引用。这些参考条目也在传统“man”页面中可用。目录I. SQL 命令ABORT— 中止当前事务ALTER AGGREGATE— 更改一个聚集函数的定义ALTER COLLATION— 更改一个排序规则的定义ALTER CONVERSION— 改变一个转换的定义ALTE...

2020-12-03 10:28:31 262

原创 个人笔记1.清洗会用

1.id||'_'||ROW_NUMBER()OVER(PARTITION BY id ORDER BY company,job,work_start_date,work_end_date) AS pk_id --row_number 分析函数排序、分组去重/字段拼接//||拼接符|| 2.数值清洗——填充空格(.replace(' ','')REPLACE(STR1,STR2,STR3) str3替换str1中出现的所有str2,返回新的字符串,如果有某个参数为NULL,此函数返...

2020-12-02 17:03:23 229

原创 数据学习网

草鸟教程 学习网 https://www.runoob.com/postgresql 数据库https://www.runoob.com/manual/PostgreSQL/

2020-12-02 16:45:59 145

转载 PostgreSQL 常用函数, 比较全面的总结。

PostgreSQL 常用函数PostgreSQL 内置函数也称为聚合函数,用于对字符串或数字数据执行处理。下面是所有通用 PostgreSQL 内置函数的列表:COUNT 函数:用于计算数据库表中的行数。 MAX 函数:用于查询某一特定列中最大值。 MIN 函数:用于查询某一特定列中最小值。 AVG 函数:用于计算某一特定列中平均值。 SUM 函数:用于计算数字列所有值的总和。 ARRAY 函数:用于输入值(包括null)添加到数组中。 Numeric 函数:完整列出一个 SQL

2020-12-02 16:32:52 3025

转载 PostgreSQL 时间/日期函数和操作符

PostgreSQL 时间/日期函数和操作符日期/时间操作符下表演示了基本算术操作符的行为(+,*, 等):操作符 例子 结果 + date '2001-09-28' + integer '7' date '2001-10-05' + date '2001-09-28' + interval '1 hour' timestamp '2001-09-28 01:00:00' + date '2001-09-28' + time '03:00'

2020-12-02 16:27:54 363

转载 PostgreSQL PRIVILEGES(权限)

PostgreSQL PRIVILEGES(权限)无论何时创建数据库对象,都会为其分配一个所有者,所有者通常是执行 create 语句的人。对于大多数类型的对象,初始状态是只有所有者(或超级用户)才能修改或删除对象。要允许其他角色或用户使用它,必须为该用户设置权限。在 PostgreSQL 中,权限分为以下几种:SELECT INSERT UPDATE DELETE TRUNCATE REFERENCES TRIGGER CREATE CONNECT TEMPORARY

2020-12-02 16:15:06 1436

转载 SELECT 语句中的子查询使用/DELETE 语句/UPDATE 语句/INSERT 语句

PostgreSQL 子查询子查询或称为内部查询、嵌套查询,指的是在 PostgreSQL 查询中的 WHERE 子句中嵌入查询语句。一个 SELECT 语句的查询结果能够作为另一个语句的输入值。子查询可以与 SELECT、INSERT、UPDATE 和 DELETE 语句一起使用,并可使用运算符如 =、<、>、>=、<=、IN、BETWEEN 等。以下是子查询必须遵循的几个规则: 子查询必须用括号括起来。 子查询在 SELECT 子句中只能有一个列,

2020-12-02 15:20:34 1233

转载 PostgreSQL LOCK(锁);排它锁(Exclusive Locks)和共享锁(Share Locks)

PostgreSQL LOCK(锁)锁主要是为了保持数据库数据的一致性,可以阻止用户修改一行或整个表,一般用在并发较高的数据库中。在多个用户访问数据库的时候若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性。数据库中有两种基本的锁:排它锁(Exclusive Locks)和共享锁(Share Locks)。如果数据对象加上排它锁,则其他的事务不能对它读取和修改。如果加上共享锁,则该数据库对象可以被其他事务读取,但不能修改。LOCK 命令语法LOCK 命令基础语

2020-12-02 15:02:15 3981 1

转载 PostgreSQL :TRANSACTION(事务),COMMIT确认事件/ROLLBACK回滚事件

PostgreSQL TRANSACTION(事务)TRANSACTION(事务)是数据库管理系统执行过程中的一个逻辑单位,由一个有限的数据库操作序列构成。数据库事务通常包含了一个序列的对数据库的读/写操作。包含有以下两个目的:为数据库操作序列提供了一个从失败中恢复到正常状态的方法,同时提供了数据库即使在异常状态下仍能保持一致性的方法。 当多个应用程序在并发访问数据库时,可以在这些应用程序之间提供一个隔离方法,以防止彼此的操作互相干扰。当事务被提交给了数据库管理系统(DBMS),则 DBMS

2020-12-02 14:43:26 2712 2

转载 PostgreSQL ALTER TABLE 命令、添加,修改,删除表

PostgreSQL ALTER TABLE 命令在 PostgreSQL 中,ALTER TABLE命令用于添加,修改,删除一张已经存在表的列。另外你也可以用ALTER TABLE命令添加和删除约束。语法用 ALTER TABLE 在一张已存在的表上添加列的语法如下:ALTER TABLE table_name ADD column_name datatype;在一张已存在的表上 DROP COLUMN(删除列),语法如下:ALTER TABLE table_name...

2020-12-02 14:11:48 4320

转载 PostgreSQL 索引 类型讲解

PostgreSQL 索引索引是加速搜索引擎检索数据的一种特殊表查询。简单地说,索引是一个指向表中数据的指针。一个数据库中的索引与一本书的索引目录是非常相似的。拿汉语字典的目录页(索引)打比方,我们可以按拼音、笔画、偏旁部首等排序的目录(索引)快速查找到需要的字。索引有助于加快 SELECT 查询和 WHERE 子句,但它会减慢使用 UPDATE 和 INSERT 语句时的数据输入。索引可以创建或删除,但不会影响数据。使用 CREATE INDEX 语句创建索引,它允许命名索引,指定表及要索

2020-12-02 13:59:23 353

转载 PostgreSQL 建表约束规则

PostgreSQL 约束PostgreSQL 约束用于规定表中的数据规则。如果存在违反约束的数据行为,行为会被约束终止。约束可以在创建表时规定(通过 CREATE TABLE 语句),或者在表创建之后规定(通过 ALTER TABLE 语句)。约束确保了数据库中数据的准确性和可靠性。约束可以是列级或表级。列级约束仅适用于列,表级约束被应用到整个表。以下是在 PostgreSQL 中常用的约束。NOT NULL:指示某列不能存储 NULL 值。 UNIQUE:确保某列的值都是唯

2020-12-02 11:25:01 1625

转载 PostgreSQL WITH 子句,表数据转移

PostgreSQL WITH 子句在 PostgreSQL 中,WITH 子句提供了一种编写辅助语句的方法,以便在更大的查询中使用。WITH 子句有助于将复杂的大型查询分解为更简单的表单,便于阅读。这些语句通常称为通用表表达式(Common Table Express, CTE),也可以当做一个为查询而存在的临时表。WITH 子句是在多次执行子查询时特别有用,允许我们在查询中通过它的名称(可能是多次)引用它。WITH 子句在使用前必须先定义。语法WITH 查询的基础语法如下:

2020-12-02 11:18:05 180

原创 同步数据:把一个表/结果集中的数据同步到另外的表

同步数据:把一个表/结果集中的数据同步到另外的表业务系统表的数据 --------------> ODS层 -----------> DW层 ----------------->DM层1、通过存储过程/工具来实现2、分为 全量同步(全量抽取) 和 增量同步(增量抽取)-----------全量同步:逻辑:用源表的数据直接覆盖目标表实现的逻辑:先将 目标表中的数据清空,然后查询源表的数据,插入到目标表中--比如:全量同步emp表的数据到EMP_TAG表--第一步:创建目.

2020-12-01 11:32:36 1781 1

原创 ----几个判断赋值函数

----------几个判断赋值函数NVL(参数1,参数2):判断参数1是否为空。如果不为空,则取参数1的值,如果为空,则取参数2的值参数1是目标字段,参数2是一个具体的值--需要注意:参数2的值的类型要跟参数1的类型一致--比如:SELECTE.*,NVL(E.COMM,0)FROMEMPE;NVL2(参数1,参数2,参数3):判断参数1是否为空。如果不为空,则取参数2的值,如果为空,则取参数3的值...

2020-12-01 11:24:04 443

原创 PLSQL:一种编程语言

PLSQL:一种编程语言,针对的对象是数据库中的数据(表,表里的数据等等)--在sql中能写的东西,在plsql也都可以写--PL/SQL对大小写不敏感。(现在学习时候得标准:所有的字母都大写)--语法结构:DECLARE--声明/定义的地方(变量、常量、游标)(非必须)BEGIN--写逻辑/写操作的地方(必须)EXCEPTION--处理异常的地方(非必须)END;--需要注意的是:1、单词不要写错了2、如果要使用变量,那么一定要提前声明3、每写完一...

2020-12-01 11:15:52 685

原创 orcale 语句基本语法缩写

--语 句              功 能-- 查询语法格式SELECT --从数据库表中检索数据行和列FROM --数据来自哪些表WHERE -- 哪些条件AND -- 和 其他条件OR -- 或 其他条件GROUP BY -- 按条件分组HAVING -- 分组后按条件过滤ORDER BY -- 按条件排序ASC -- 升序DESC -- 降序--关联查询INNER JOIN -- 内关联LEFT JOIN -- 左外关联RIGHT JOIN -- 右外关联FULL OUTER JOIN --.

2020-12-01 10:45:28 207

原创 oracle 数据库基础

1、数据库:放数据的仓库。我们今天装的以及接下来学习的叫做oracle数据库oracle数据库里的数据是以表的形式存放数据的2、我们用的是SCOTT用户,它下面有自带4张表:EMP(员工信息表)、DEPT(部门表)、SALGRADE(工资等级表)、BONUS(奖金/提成表,这个是空表)3、SQL:结构化查询语言(*)------------基本查询--语法结构:SELECT 要查询的信息FROM 表名; --比如:看emp表中的内容SELECT * FROM EMP;--.

2020-12-01 10:40:48 173

原创 分析函数

------------------分析函数:功能强大。每一组的每一行都可以返回一个统计值1、OVER():开窗,单独查询的时候没有任何意义--比如SELECTOVER()FROMDUAL;---会报错2、它一般是结合其它的函数一起使用。比如:结合聚合函数解决一些复杂的报表统计--语法结构:聚合函数OVER()--比如:查询EMP表中的员工的信息以及平均工资SELECTE.*,AVG(E.SAL)OVER()AVG_SALFROMEMPE;--可以解决掉聚...

2020-12-01 10:33:34 843

原创 存储过程

---存储过程:把一些经常用到的操作封装起来,存在数据库里面,便于后续的多次调用存储过程一般用来做数据同步--语法结构:CREATEORREPLACEPROCEDURE存储过程名[(参数1[参数类型]数据类型[,参数2参数类型数据类型,....])]IS--/AS--声明部分BEGIN--逻辑体END;--开发规范:存储过程名以SP_开头--需要注意的是:1、CREATEORREPLACE(创建或者替换/更新)的依据就是存储过程名意思就是:当...

2020-12-01 10:28:27 212

原创 自定义函数

----自定义函数:把一些功能/操作封装起来,存在数据库里面,供用户多次使用,不同于sp的是,自定义函数必须要返回一个值(return)FUN一般用来计算用户的指标--创建自定义函数的语法结构:CREATEORREPLACEFUNCTION函数名[(参数1[参数类型]数据类型[,参数2参数类型数据类型......])]RETURN返回的数据类型IS/AS--声明部分BEGIN--逻辑体--必须有一个RETURN子句;END;--开发规范:函数名以...

2020-12-01 10:26:33 389

原创 -增量同步

-----增量同步逻辑:用源表的数据更新目标表,如果目标表中存在该数据则更新,如果不存在则插入实现逻辑:首先,判断目标表中是否存在源表的数据(比较字段)如果有,则用源表中的数据更新目标表中的对应的该数据如果没有,则直接将源表中的数据插入到目标表--有两种方式:1、游标 (sp+游标的方式)2、MERGE INTO (不适用于所有的数据库,oracle数据库独有)---------游标的方式--比如:将emp表中的数据通过增量同步的方式抽取到 EMP_TAG--第一步:建表(表已经存在,就

2020-12-01 10:24:36 1431

原创 条件判断、IF ELSE 判断、CASE WHEN 判断

-----------------条件判断:根据条件是否为真,执行相应的操作1、IFELSE判断2、CASEWHEN判断-----------IFELSE条件判断--语法结构:DECLARE--声明体BEGIN--逻辑体IF条件1THEN逻辑1;[ELSIF条件2THEN逻辑2;ELSIF条件3THEN逻辑3;...ELSE其它逻辑;]ENDIF;END;--需要注意...

2020-12-01 10:13:39 2828

原创 循环控制

---循环控制:重复的执行某一些操作,以得到想要的结果有3种循环的语法1、LOOP循环2、WHILE循环3、FOR循环--------------LOOP循环--语法结构:DECLARE--声明部分BEGIN--逻辑体LOOP--循环逻辑体IF满足退出循环的条件THENEXIT;ENDIF;--退出循环的简写EXITWHEN退出循环的条件;ENDLOOP...

2020-12-01 10:08:50 292

原创 游标:指向一个结果集的指针

---游标:指向一个结果集的指针--便于理解的来说:指针就可以当做是这个结果集,循环这个指针,就可以拿到该结果集里的数据、分为:隐式游标和显式游标-----------隐式游标:SELECT....INTO...--需要注意:1、查询的结果只能是1行,不能是0行或者多行2、不需要声明,直接可以使用-----------显示游标:--声明显式游标的语法结构:DECLARE--声明的部分CURSOR游标名[(参数1数据类型[,参数2数据类型.....])]ISSELEC...

2020-12-01 10:02:48 629

空空如也

空空如也

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

TA关注的人

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