首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

所谓数据质量

一个检核对象数据取值必须与另一个多个检核对象在一定规则下相等。 存在一致性依赖约束:描述检核对象之间数据值存在关系约束规则。一个检核对象数据值必须在另一个检核对象满足某一条件时存在。...逻辑一致性依赖约束:描述检核对象之间数据值逻辑关系约束规则。一个检核对象上数据值必须与另一个检核对象数据值满足某种逻辑关系(如大于、小于等)。 等值一致性依赖约束 一般指外键关联场景。...例如:保单,理赔保单号存在保单主表,同一张,两个字段之间关联关系。 存在一致性依赖约束 主要是强调业务关联性,一个状态发生了则某个值一定会如何。...例如:投保状态为已投保,则投保日期不应为空; 逻辑一致性依赖约束 主要强调是字段间互相约束关系。 例如:投保开始时间小于等于投保结束时间。 ?...及时性由于多个系统、通信等原因而造成,通常需要业务人员系统人员手工核查。 一般来说数据同步都是基于业务系统技术字段(比如:CREATE_DT),而真是业务发生时间可能与该字段存在时间间隔

1.6K20

Pandas库常用方法、函数集合

join concat:合并多个dataframe,类似sqlunion pivot:按照指定行列重塑表格 pivot_table:数据透视,类似excel中透视 cut:将一组数据分割成离散区间...,适合将数值进行分类 qcut:和cut作用一样,不过它是将数值等间距分割 crosstab:创建交叉,用于计算两个多个因子之间频率 join:通过索引合并两个dataframe stack: 将数据框列...“堆叠”为一个层次化Series unstack: 将层次化Series转换回数据框形式 append: 将一行多行数据追加到数据框末尾 分组 聚合 转换 过滤 groupby:按照指定多个列对数据进行分组...: 生成时间间隔范围 shift: 沿着时间轴将数据移动 resample: 对时间序列进行重新采样 asfreq: 将时间序列转换为指定频率 cut: 将连续数据划分为离散箱 period_range...: 获取日期星期几和月份名称 total_seconds: 计算时间间隔总秒数 rolling: 用于滚动窗口操作 expanding: 用于展开窗口操作 at_time, between_time

24910
您找到你想要的搜索结果了吗?
是的
没有找到

怎么进行用户留存分析?

一、计算每个用户登录天数间隔 利用自联结计算间隔天数,a作为前面登录(计算当日用户数),b作为后登录(计算后面的留存数),间隔日期为{“b登录日期”-“a登录日期”},通过a、...left join 用户登录 b on a.用户ID=b.用户ID and a.登录日期< b.登录日期 order by a.登录序号,a.登录日期; 得到一个用户在各个日期与后面几日间隔天数笛卡尔积...筛选取出来,因满足条件用户ID有多个,所以需要用distinct去重,然后对满足条件”用户ID” 进行计数就行了。...在电商行业、互联网行业经常要计算用户留存率,怎么用sql语句构建并计算用户留存数是非常重要 2、Datediff()函数应用 Datediff() 函数返回两个日期之间天数,表达式: datediff...(date1,date2) date1 和 date2 参数是合法日期日期/时间表达式,只有值日期部分参与计算。

76920

sparksql源码系列 | 生成resolved logical plan解析规则整理

join策略hint计划节点将插入到与指定名称匹配任何关系(别名不同)、子查询公共表表达式顶部。hint解析工作原理是递归遍历查询计划,找到与指定关系别名之一匹配关系子查询。...Resolution fixedPoint 用v2目录中具体关系解析关系。...ResolveGenerate Resolution fixedPoint 重写,生成需要以下一个多个表达式才能解析表达式:其输出具体属性引用。...ResolveBinaryArithmetic Resolution fixedPoint 关于加法:1.如果两边都是间隔,保持不变;2.否则,如果一边是日期,另一边是间隔,则将其转换为DateAddInterval...关于减法:1.如果两边都是间隔,保持不变;2.否则,如果左侧为日期,右侧为间隔,则将其转换为DateAddInterval(l, -r);3.否则,如果右侧是区间,则将其转换为TimeAdd(l, -r

3.6K40

PostgreSQL 教程

交叉连接 生成两个多个笛卡尔积。 自然连接 根据连接公共列名称,使用隐式连接条件连接两个多个。 第 4 节....集合运算 主题 描述 UNION 将多个查询结果集合并为一个结果集。 INTERSECT 组合两个多个查询结果集并返回一个结果集,该结果集行都出现在两个结果集中。...主题 描述 插入 指导您如何将单行插入中。 插入多行 向您展示如何在中插入多行。 更新 更新现有数据。 连接更新 根据另一个值更新值。 删除 删除数据。...删除 删除现有及其所有依赖对象。 截断 快速有效地删除大所有数据。 临时 向您展示如何使用临时。 复制表 向您展示如何将表格复制到新表格。 第 13 节....DATE 引入DATE用于存储日期数据类型。 时间戳 快速了解时间戳数据类型。 间隔 向您展示如何使用间隔数据类型有效地处理一段时间。 TIME 使用TIME数据类型来管理一天中时间值。

47010

Spark基础全解析

依赖就是父RDD分区可以一一对应到子RDD分区,宽依赖就是父RDD每个分区可以被多个子RDD 分区使用。 ?...从失败恢复角度考虑,窄依赖失败恢复更有效,因为它只需要重新计算丢失父分区即可,而宽依赖牵涉到RDD各级多个父分区。...检查点(Checkpoint) 在计算过程中,对于一些计算过程比较耗时RDD,我们可以将它缓存至硬盘HDFS中,标记这个RDD有 被检查点处理过,并且清空它所有依赖关系。...而在Structured Streaming模型中,我们要把数据看成一个无边界关系数据。每一个数据都是一行,不断会有新数据行被添加到表里来。 ?...每个时间间隔它都会读取最新输入,进 行处理,更新输出,然后把这次输入删除。Structured Streaming只会存储更新输出所需要信息。

1.2K20

一场pandas与SQL巅峰大战(三)

在前两篇文章中,我们从多个角度,由浅入深,对比了pandas和SQL在数据处理方面常见一些操作。...无论是在read_csv中还是在read_excel中,都有parse_dates参数,可以把数据集中一列多列转成pandas中日期格式。...我们在MySQL和Hive中都把时间存储成字符串,这在工作中比较常见,使用起来也比较灵活和习惯,因此没有使用专门日期类型。 开始学习 我们把日期相关操作分为日期获取,日期转换,日期计算三类。...日期计算 日期计算主要包括日期间隔(加减一个数变为另一个日期)和计算两个日期之间差值。 1.日期间隔 pandas中对于日期间隔计算需要借助datetime 模块。...python中和SQL本身关于日期操作还有很多其他用法,限于时间关系就省略了。 由于时间匆忙,行文不当之处还请多多包含。如果你有好想法,欢迎一起交流学习。

4.5K20

sql学习

sql语法 一个数据库常包含一个多个,每个一个名字标识,包含带有数据记录。...在SQL中,可使用以下通配符: 通配符 描述 % 替代一个多个字符 _ 仅代替一个字符 [charlist} 字符列中任何单一字符 [^charlist]或者[!...AS alias_name FROM table_name SQL JOIN SQL join用于根据两个多个列之间关系,从这些中查询数据。...() 返回日期 DATE ADD() 给日期添加指定时间间隔 DATE SUB() 从日期减去指定时间间隔 DATEDIFF() 返回两个日期之间天数 DATE FORMAT() 用不同格式显示日期.../时间 SQL SERVER Date函数 函数 描述 GETDATE() 返回当前日期和时间 DATEPART() 返回日期之间单独部分 DATEADD() 在日期中添加减去指定时间间隔 DATEDIFF

4.6K30

单列文本拆分为多列,Python可以自动化

示例文件包含两列,一个姓名和出生日期。 图2 我们任务如下: 1.把名字和姓氏分开 2.将出生日期分为年、月和日 让我们将数据加载到Python中。...一旦我们将Excel加载到pandas中,整个将成为pandas数据框架,“出生日期”列将成为pandas系列。因为我们不能循环,所以需要一种方法来访问该系列中字符串元素。...这就是.str出现地方。它基本上允许访问序列中字符串元素,因此我们可以对列执行常规String方法。 Python字符串切片 让我们首先处理日期,因为它们看起来间隔相等,应该更容易。...看一个例子: 图6 上面的示例使用逗号作为分隔符,将字符串拆分为两个单词。从技术上讲,我们可以使用字符作为分隔符。注意:返回结果是两个单词(字符串)列表。 那么,如何将其应用于数据框架列?...图8 正如预期那样,由于存在多个列(系列),因此返回结果实际上是一个数据框架。

6.9K10

新上架游戏APP,咋分析?

也就是时间间隔=1。 一个如果涉及到时间间隔,就需要用到自联结,也就是将两个相同进行联结。...(1)这涉及到计算两个日期之间差值,《猴子 从零学会sql》里讲到对应单函数是timestampdiff。下图是这个函数用法。...d,用case when语句选出时间间隔=1数据,计算活跃用户总数(count)和活跃用户平均年龄(avg) SQL书写如下: select count(distinct case when 时间间隔...from d; 将临时dSQL代入,最终SQL代码如下: select count(distinct case when 时间间隔=1 then 用户ID else null end ) as 活跃用户总数...3.遇到只有一个,但是需要计数时间间隔问题,就要想到用自联结来求时间间隔,类似的有找出连续出现N次内容、滴滴2020求职真题、链家面试题:如何分析留存率。

35820

monthdiff oracle_timestampdiff

oracle中有没有类似于db2timestampdiff 在Oracle里用减号“-”直接就是求两个日期时间变量或者表列差值,只是要看你timestampdiff一个参数是求“月、天、时、分”...,第一个参数是(timestampExpression2-timestampExpression1)时间差表示单位,如SQL_TSI_SECOND是以秒为单位,返回两个查询参数时间差。...函数 TimeStampDiff() 是MySQL本身提供可以计算两个时间间隔函数,语法为: TIMESTAMPDIFF(unit,datetime_expr1,datetime_expr2) 返回日期日期时间表达式...()函数(updateset字段1=”wheretimestampdiff(day,now(),日期字段)<=0and日期字段!...(interval,datetime_expr1,datetime_expr2) 返回日期日期时间表达式datetime_expr1 和datetime_expr2the 之间整数差。

1.4K30

数据库(视图,事件,触发器,函数,存储,变量)

一.视图 1.什么是是视图 ​ 本质上是一个虚拟,即看得见但是不实际存在 视图内修改了内容,原内容也会受到影响 原修改了内容视图同样也会受到影响 目的:简化sql语句 2.视图增删改查 增...2.事物特点 原子性,指的是这个事务中sql语句是一个整体,不能拆分,要么都执行,要么全都失败 一致性, 事务执行结束后,关联关系一定是正确,不会发送数据错乱 隔离性,事务之间相互隔离,数据不会互相影响...,即使操作了同一个 , 本质就是加锁,根据锁粒度不同分为几个隔离级别 持久性,事务执行成功后数据将永久保存,无法恢复 3.事物语法 mysql #开启事务 start transaction...ucase(str)upper(str) 返回将字符串str中所有字符转变为大写后结果 四、日期和时间函数 函数 介绍 curdate()current_date() 返回当前日期 curtime...()current_time() 返回当前时间 date_add(date,interval int keyword) 返回日期date加上间隔时间int结果(int必须按照关键字进行格式化),如

1.1K60

时间问题,你会吗?

某店铺商品信息中记录了有哪些商品 订单明细中记录了商品销售流水;"订单明细"中'商品ID' 与"商品信息"中'商品ID'一一对应。...业务问题:每天更新"订单明细"里间隔周数。...计算规则是当前日期与支付时间相隔周数(值为其中一个,1周,2周,4周,8周,16周,16周以上) 【解题思路】 使用逻辑树分析方法,将问题拆解为2个子问题: 1)计算当前日期与支付时间相隔周数 2...)根据间隔周数条件分组 1.计算当前日期与支付时间相隔周数 设计到日期,要能想到《猴子从零学会SQL》里讲过日期函数。...而更新,需要使用update函数,SQL语法如下 update set = 用下面SQL就可以得到当前日期与支付时间相隔周数 update 订单明细

91120

MYSQL(基本篇)——一篇文章带你走进MYSQL奇妙世界

数据库相关概念 数据库整体而言,分为三个部分: 名称 全称 简称 数据库 存储数据仓库,数据是有组织进行存储 DB 数据库管理系统 操纵和管理数据库大型软件 DBMS SQL 操作关系型数据库编程语言...07 YYYY-MM-DD HH:MM:SS 混合日期和时间值,时间戳 混合日期和时间值,时间戳 SQL语法 SQL语法分为多个部分,让我们来逐步了解: SQL通用语法 SQL通用语法适用于所有SQL...) 获得指定date年份 MONTH(date) 获得指定date月份 DAY(date) 获得指定date日期 DATE_ADD(date,INTEVAL expr type) 返回一个日期加上一个时间间隔...会根据业务需求以及业务模块之间关系,分析并设计结构,由于业务之间相互关联,所有各个之间也存在着各种联系 关系大致分为三种: 一对多 关系一个部门对应多个员工,一个员工对应一个部门 实现...:在多一方建立外键,指向一一方主键 多对多 关系一个学生选择多个课程,一个课程有多个学生选择 实现:建立第三张中间,中间至少包含两个外键,分别关联两方主键 一对一 关系:一对一关系常用于单内容过多

1.6K40

SQL数据分析淘宝用户分析实操

数据库名为user。...数据一致化处理 由于 time 字段时间包含(年-月-日)和小时,为了方便分析,将该字段分成 2 个字段,一个日期列(date)和一个小时列(time)。 {!...通过查询结构,可以看到 date 列日期列不是日期类型: ? 将date 列改成 date 类型: ? 04. 构建模型和分析问题 1. 总体用户购物情况 pv(总访问量) ? 日均访问量 ?...由以上结果可以看出,购买率为低用户分为两类, 第一类是点击次数少,一方面的原因是这类用户可能是不太会购物或者不喜欢上网用户,可以加以引导,另一方面是从商品角度考虑,是否商品定价过高设计不合理;...(1)计算R-Recency 由于数据集包含时间是从2014年11月18日至2014年12月18日,这里选取2014年12月19日作为计算日期,统计客户最近发生购买行为日期距离2014年12月19日间隔几天

2.2K20

一篇文章搞懂数据仓库:三种事实(设计原则,设计方法、对比)

1.3 累积快照事实 用来描述过程开始和结束之间关键步骤事件,覆盖过程整个生命周期,通常具有多个日期字段来记录关键时间点;当过程随着生命周期不断变化时,记录也会随着过程变化而被修改; 个人理解:要看整个生命周期多个业务过程...粒度是一个订单一行数据,创建订单时间,付款时间,发货时间,收货时间,分别作为一个字段,便于计算不同业务过程时间间隔。...2、三种事实对比 事务事实 周期快照事实 累积快照事实 时期/时间 离散事务时间点 以有规律、可预测 用于时间跨度不确定不断变化工作流 日期维度 事务日期 快照日期 相关业务过程涉及多个日期... 粒度每行代表实体一个事务 每行代表某时间周期一个实体 每行代表一个实体生命周期 事实 事务事实累积事实相关业务过程事实和时间间隔事实 事实加载 插入 插入 插入与更新 事实更新 不更新 不更新...等于、大于等于、小于等于; 处理:用 0 代替 null ; 原则 8:使用退化维度提高事实易用性 事实中存储各种类型常用维度信息,较少下游用户使用时关联多个操作; 通过退化维度,可以实现对事实过滤查询

4.7K21

mysql和sqlserver区别_一定和必须区别

请注意,每个可以有多个 UNIQUE 约束,但是每个只能有一个 PRIMARY KEY 约束。...EXTRACT() 返回日期/时间按单独部分 DATE_ADD() 给日期添加指定时间间隔 DATE_SUB() 从日期减去指定时间间隔 DATEDIFF() 返回两个日期之间天数 DATE_FORMAT...() 用不同格式显示日期/时间 SQL Server Date 函数 GETDATE() 返回当前日期和时间 DATEPART() 返回日期/时间单独部分 DATEADD() 在日期中添加减去指定时间间隔...MySQL 数值数据类型可以大致划分为两个类别,一个是整数,另一个是浮点数小数。...在处理相互排数据时容易让人理解,比如人类性别。ENUM 类型字段可以从集合中取得一个使用 null 值,除此之外输入将会使 MySQL 在这个字段中插入一个空字符串。

3.2K21

解读《Java开发手册(泰山版)》- 会当凌绝顶,一览众山小 (附下载地址)

比如,日期时间闰年、闰月问题,三目运算自动箱,SQL查询别名限定,Collectors 类 toMap()方法使用注意等。 修改描述 90 处。比如,阻塞等待锁、建小数类型等。...以下两种场景会触发类型对齐箱操作: 1) 表达式 1 表达式 2 值只要有一个是原始类型。 2) 表达式 1 表达式 2 类型不一致,会强制箱升级成表示范围更大那个类型。...a*b : c); 四、别名 【强制】对于数据库中表记录查询和变更,只要涉及多个,都需要在列名前加别名(名)进行限定。...说明:对多表进行查询记录、更新记录、删除记录时,如果对操作列没有限定别名(名),并且操作列在多个中存在时,就会抛异常。...(名)限制,正常运行两年后,最近在某个中增加一个同名字段,在预发布环境做数据库变更后,线上查询语句出现出 1052 异常:Column 'name' in field list is ambiguous

1.2K50

数据库工程师常见面试题

问题 6: 事务和锁有什么关系? 答: 可以使用多种机制来确保数据完整性,例如约束、触发器以及本章介绍事务和锁等。事务和 锁关系非常紧密。...table_name 问题 15:一个日期判断 sql 语句,请取出 tb_send 日期(SendTime 字段)为当天所有记录?...行和列数据来自由定义视图查询所引用, 并且在引用视图时动态生成。对其中所引用基础来说,视图作用类似于筛选。定义视图筛选可以 来自当前其它数据库一个多个,或者其它视图。...答: 自定义函数可以接受零个多个输入参数,其返回值可以是一个数值,也可以是一个,但是自 定义函数不支持输出参数。 问题 23: 为什么要及时删除不用触发器?...聚集索引和非聚集索引都可以是唯一。因此,只要列中数据是唯一,就可以在同一个上创建 一个唯一聚集索引和多个唯一非聚集索引。 只有当唯一性是数据本身特征时,指定唯一索引才有意义。

3K40
领券