自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 T-SQL调优学习笔记 (数据岛问题及求连续日期)

-- 第一章 SQL窗口函数/*窗口函数的作用域是由OVER 子句定义的数据行集合。其概念的精髓在于可以通过对数据行集合或对数据行窗口进行多种计算(汇总,移动平均值,找数据岛),最后的得到单个值*/1.1 窗口函数的背景1.1.1 窗口函数的描述USE TSQL2012;SELECT orderid, orderdate, val, rank() OVER (O...

2018-07-17 16:55:24 503

原创 SQL 应用(ROW_NUMBER和辅助表)

之前我所做的是每一个电视台的人数统计,进而计算电视台的收视率和节目收视率。因为系统的工作原理是当你换台的时候才产生记录,否则不产生记录。这样我就可以根据用户的收视行为来统计出这个太每秒钟的收看人数。可是现在需要我统计一个系统中的记录,这样的问题就在于系统是一个整体,换台这个行为发生在系统中,用户离开一个节目,就会进入下一个节目。除非用户在这个节目关机。我目前需要统计每秒钟系统内开机的机顶盒数,我想...

2018-07-02 16:37:43 1072

原创 节目时段内,每分钟的流入流出的来源及去向(FULL OUTER JOIN 和COALESCE()实践)

把原数据中的点播记录去掉除,然后去除没有节目信息的记录。将原先START_TIME替换为START_TIME_C为了减少节目跳变而产生的数据激增。但是排序还是使用START_TIME,因为在按newkey分组之后,每一个newkey后面会对应一个收看电视轨迹。为的是将一个人收看的时间轨迹排序。但是出现了下面的情况,(不明所以)一个人没有换台的行为,可是还是出现了两条记录。这样的话就没有产生换台的路...

2018-07-02 16:37:34 624

原创 PostreSQL取出每组第一条(最高)记录(6种方法 )

Select first row in each GROUP BY group?stackflow上面的一个问题。用窗口函数比较简单,但是那些没有窗口函数的数据库怎么办?id | customer | total---+----------+------ 1 | Joe | 5 2 | Sally | 3 3 | Joe | 2 4 | Sally | 1...

2018-06-24 18:53:07 28543 1

原创 XJBX

大哥今天去面试TT的广告部,我俩是一起做的笔试,但是我因为准备的垃圾,没有机会去。我想如果自己是报的商业化数据分析是不是就有机会进面试了。联系着两天看《计算广告》体会,觉得应该要去到核心的部门,就是商业变现和用户增长部门。我现在可能没有那么多的机会再去面校招了,可是我可以投下社招的工作,保持学习的状态,了解现在的行业方向,防止闭门造车。我现在越来越觉得自己的精力是有限的,尽量让自己做的事情...

2019-04-19 16:12:54 494 2

原创 刷leetcode SQL题

1. 2. 3.ROW_NUMBER(),RANK(),DENSE_RANK(),NTILE() 这几个排名函数搞清楚4. 5. 6.

2018-09-02 00:56:47 1218

原创 SQL先计算再聚合与先聚合再计算之间的区别

做客户分析的时候遇到了一个小问题,要统计客户的性别,但是有些客户的性别为空(empty)。所以要统计下有性别标记的客户有多少。写了两个SQL。三行数据,两行GOOD分别对应男性和女性。两个查询产生不同的原因在于CASE语句计算是发生在聚合操作之前还是之后。第一个CASE发生在聚合之前,第二个发生在聚合之后。所以要注意如果对应的GROUP BY 子句没有使用相同的表达式,聚合操作可能不会减少...

2018-08-18 12:59:22 2270

原创 在SQL中计算生存率

谢绝转载根据美国2009年美国人口统计局数据,绘制平均寿命曲线:不同性别以及不同肤色的人口随年龄变化的生存率。第一次体现了生存率和风险率的概念,以及递归的概念。为了保持公式的连贯性,使用 IF() 和 ISNUMBER()。项目使用的数据是来自三个移动电话运营商的数据,对客户姓名进行了脱敏。生存分析依赖关于客户的两个信息:标记客户是停止还是活跃和客户任期(客户的活跃市场)。...

2018-08-17 15:09:33 965

原创 在SQL中完成Excel中PRODUCT()功能

Excel中的PRODUCT函数将所有以参数形式给出的数字相乘,并返回乘积值。我在计算用户生存率的时候遇到了一个问题。(具体计算方法见博客另一篇)如下图 G列为每个用户任期的风险率,生存率为所有(1-风险率)的乘积,每一个后续的生存率等于上一个生存率值*(1减上一个风险率)。在Excel中可以使用PRODUCT,首先计算每一任期的生存率(1-风险率),并且通过 '$26' ...

2018-08-13 15:47:59 1240

转载 LEFT JOIN ON AND与LEFT JOIN ON WHERE的区别

数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户。 在使用left jion时,on和where条件的区别如下: 1、on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。 2、where条件是在临时表生成好后,再对临时表进行过滤的条件。这时已经没有left join的含义(必须返回左边表的记录)了,条件不为真的...

2018-08-05 15:59:05 173

转载 HQL和SQL的区别

Hive和数据库的比较由于 Hive 采用了 SQL 的查询语言 HQL,因此很容易将 Hive 理解为数据库。其实从结构上来看,Hive 和数据库除了拥有类似的查询语言,再无类似之处。本文将从多个方面来阐述 Hive 和数据库的差异。数据库可以用在 Online 的应用中,但是Hive 是为数据仓库而设计的,清楚这一点,有助于从应用角度理解 Hive 的特性。查询语言由于SQL被广泛...

2018-08-05 15:53:04 7437

原创 SQL 控制窗口范围ROWS和RANG区别

窗口范围:ROWS BETWEEN 和RANG BETWENN,一个从数据行的角度定义窗口范围,一个从值的角度。WITH t as (        SELECT 1 as i,                     1 as col         UNION ALL        SELECT 2, 1        )SELECT t.*,             SU...

2018-08-05 01:07:43 1659

转载 SQL中如何使用EXISTS替代IN

我们在程序中一般在做SQL优化的时候讲究使用EXISTS带替代IN的做法,理由是EXISTS执行效率要比IN高。  之前我一直挺懵懂的一件事情是如何使用EXISTS来替换IN呢,二者表示的意义又是什么呢?今天就我个人理解记录一下  IN表示范围,指某一字段在某一范围之内,这个范围一般使用子查询来获取,由此可知IN子查询返回的结果应该就是这个范围集。  EXISTS表示存在,指至少存在一处,这...

2018-07-27 19:04:48 537

原创 SQL Sever 中随机抽样,分层抽样和平衡抽样

3.3 对表做抽样3.3.1 随机抽样--获取10%的随机样本数据SELECT t.*FROM <t> tWHERE RAND() < 0.1但是不能用在SQL Sever中,要用 NEWID(),可是有个问题是这样必须为表汇总的所有记录排序,过于耗费资源,解决办法是使用NEWID()SELECT TOP PERCENT t.*FROM <T&g...

2018-07-19 18:19:16 17897

原创 SQL Sever父级递归

有点复杂这个问题,今天搞着搞着把自己弄乱了。先把需要的网页放进来https://blog.csdn.net/u011872945/article/details/14452641这个人在SQL Sever里面写了函数,可以由子节点查找父节点,也可以由父节点查找所有子节点。很厉害,而且还用了递归。https://zhidao.baidu.com/question/1495468298...

2018-07-16 18:27:12 502

原创 SQL汇总显示各个省包所含的城市及县区

SQL交流群里面有个人提了个问题:怎么查询会员表中 下级会员 个数大于10的会员?会员表A字段  userid(会员ID),NAME(会员名称),suID(会员上级ID)同一个会员发展的下线会员有同样的suid,以上级的id分组,having出>10,内连接子查询的suid就是下级会员数大于10的人的userid,为了找出这些人的name需要再连接原表select users.userid,...

2018-07-15 16:45:15 8956

原创 想要个数据分析实习

今天是端午节,妈妈让我不要老是待在实验室,多出去转转。3月自从这个学期开学(3.6),我就开始关注找实习的事情,一方面知道暑假是实习的好时间,但是另一方面也知道自己导师不会让自己那么早去,要给他干活。但是还是存有残念,想怎样才能放我去实习,但是忽略了最重要的一点就是自己到底有没有实力去实习。所以我参加了各大公司的春早笔试,结果下来不算太好。我也由此认识到了自己的不足。一方面自己的技术水平达不到,另...

2018-07-02 16:37:27 4493 1

原创 机顶盒数据首尾对应(下一条记录的结束时间作为下一条记录的开始时间) 未完

从20号就开始感冒,然后发烧38.5℃。是真的难受啊,浑身酸痛,两眼发热,只能躺床上喝水。决心病好好了之后加强锻炼,不然太耽误事了。之前的SQL坑要填上。秋招马上就要开始了,既然生病好了就要振作起来。下面总结下前段时间学到的SQL技巧。============================================================================我在做的过程...

2018-07-02 16:37:10 626

原创 SQL转置 (CASE)

SELECT (CASE WHEN startdate >= '2003-12-31' THEN startdate ELSE '2003-12-31' END) as thedate, market, COUNT(*) as numstarts, 0 as numstopsFROM subscribers sWHERE startdate IS NOT N...

2018-07-02 12:13:57 1236

转载 Postresql中 Lateral 的用法

http://blog.itpub.net/133735/viewspace-1869548/PG 数据库 在9.3 中引入了这个关键字, 他的用途就是可以在子查询中 跟外面的表实现关联. 

2018-06-25 18:08:41 3837

转载 WITH RECURSIVE递归(4个例子)

原创文章,转载请务必将下面这段话置于文章开头处(保留超链接)。本文转发自技术世界,原文链接 http://www.jasongj.com/sql/cte/计算1到100的累加的结果。WITH RECURSIVE t(n) AS ( VALUES (1) UNION ALL SELECT n+1 FROM t WHERE n < 100)SELECT sum(n) ...

2018-06-22 15:13:54 46285 4

原创 Data Visualization and Communication with Tableau

这是Coursera的杜克大学从 Excel 到 MySQL:商业分析技术 专项课程的第三个阶段课程。这个课程的目的和内容如下:第一周:Jane引用了一份报告,The State of Business Intelligence and Business Analytics in Academia 2012我们将商业智能/商业分析(BI/BA)定义为:将数据转化为驱动商业决策和行动的洞察力的人、过...

2018-06-16 17:21:15 1129

原创 机顶盒用户流向分析

电视台的项目今天有重大的突破,做了个demo。这个demo做完,我觉得自己在数据的理解上走的弯路太多,数据的探索是一个很重要的步骤,不可跳过,尤其是在接手一个新的领域的数据的时候,太想当然了,浪费太多时间。今天下午所做的应该是大连-1新闻锋线节目,开播5分钟后流出到各个电视台的情况,在做的时候没有增加限制,后期可以增加例如看了多长时间以及地区编号的限制等等。话不多说,记录下思路。刚开始想找到一个用...

2018-06-13 17:55:24 673

原创 关于有多少人收看节目时长超过5min 的统计

我在这个统计上和一个人不一样。根据这个人的代码,我把两个数据取出来,然后比对相差的数据是否符合要求。两张表相同的数据不要,然后留下相异的。这次对比两个excel表中的数据用到了高级筛选,用到了vlookup函数。http://www.officezhushou.com/excel/jiqiao/2925.html...

2018-06-10 19:31:52 446

转载 PostgreSQL 中类型转换

PostgreSQL中所有的类型都可以使用单引号(‘ ’)来输入。warehouse_db=# select int '1' + int '100';?column? ----------101(1 row)PostgreSQL支持使用标准SQL的类型转换函数CAST进行类型转换。warehouse_db=# select CAST('5' as char),CAST('2015-10-10' a...

2018-06-01 19:38:32 20979

原创 ubuntu和clickhouse和DBeaver的安装

连接的时候不能输入密码啊,我以为是没有开放连接翻了半天文件,没有被注释掉的内容。

2018-06-01 16:46:33 1025

转载 pgsql中 的模式和用户

一个PostgreSQL数据库集群包含一个或多个已命名数据库。用户和用户组在整个集群范围内是共享的,但是其它数据并不共享。任何与服务器连接的客户都只能访问那个在连接请求里声明的数据库。注意: 集群中的用户并不一定要有访问集群内所有数据库的权限。共享用户名的意思是不能有重名用户。假定同一个集群里有两个数据库和一个joe用户,系统可以配置成只允许joe 访问其中的一个数据库。一个数据库包含一个或多个已...

2018-05-22 14:06:02 8169

原创 PostgreSQL中的Permission denied问题解决

想开始学习SQL和Excel那本书,觉得自己亲手去输入才是正道。发现程序后续会用到窗口函数,可是我的mysql没有窗口函数,这本书所提供的数据的导入方式比较特别,分别是MS SQL Sever和PostreSQL。上午我先安装的sql sever,可是由于比较大且在安装时出现了一些小的问题(安装缓慢,服务启动不了)。无奈选择了PostreSQL,体积小,安装顺利。导入数据比较特别,先建一个表,然后...

2018-05-21 20:44:33 64257 6

转载 主键与索引的区别 (+强制索引)

主键是表中的一个或多个字段,它的值用于惟一地标识表中的某一条记录.;使用索引可快速访问数据库表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构,只有当经常查询索引列中的数据时,才需要在表上创建索引。索引占用磁盘空间,并且降低添加、删除和更新行的速度。当然索引也有好处就是查询速度快,它利还是大于弊的所以请慎重使用索引。 比如:一个学生表(t_stu )有1000条数据,给它id列建个...

2018-05-16 19:26:35 2070 1

原创 有两个水桶,一个可装7升水,一个装水3升,怎样量出2升

像这样的问题在笔试和面试中考很多,选择题可能会出两个杯子可以量出多少水?只要是两个杯子加减可以出来的数字都是可以量出来的。举例7升杯子3升杯子70434013100171535023找的的规律是先装满容量多的杯子,然后经过几次加减后让容量小的杯子装与最大容量不等的水,而且容量小的杯子只要水装满了就要倒掉。比如要构建2升,就要使大容量杯子中的水=最小杯子容量+2,即本题中的3+2=5.奔着这个目标会...

2018-05-16 12:41:33 7262 3

原创 拉勾数据分析师入门课程

到底什么是“数据分析”思维?1.感知问题2.提出假设3.选择特征4.搜集数据5.分析验证描述性分析:描述发生了什么,它为分析人员提供了业务中关键指标和错失的概况。诊断性分析:追溯时间发生原因,诊断性分析工具将有助于分析人员深入了解,从而从根本上解决问题。预测性分析:预测可能发生的事情,利用建模分析,机器学习,数据挖掘,通过分析历史数据来预测指导性分析:知道需要做什么,通过模拟和最优化找到最佳决策在...

2018-05-14 15:23:47 1130

原创 0基础学SQL(三)

根据这两天在牛客网上刷SQL题总结的经验,SQL学起来又快又容易,可是一到用的时候,有很多想不到的地方。还有我的SQL水平太烂了,表的三链接都不会。MySQL必知必会这本书入门很好,能让人快速的了解SQL,但是最关键的表的链接和CASE却没有详细介绍。还是看《SQL基础教程》来的方便些。 2018/4/11 《SQL基础教程》看完了,又要开始处理新的数据了,新的问题出现了,0-11点出现的大量时间...

2018-04-09 18:37:39 142

原创 0基础学SQL(二)

一晃好多天过去了,一直在pad上学。写博客不是为了记流水账,是为了写点自己的想法,之前写学习SQL不注意的地方。总结一下这些天学得到的,下面开始吧。在数据分析汇总,有两项技能是分析师必备的,分别是计算机相关技术和数据分析方法论。数据分析师应该围绕着数据-分析-展示,这个思路来完成数据分析工作。SQL回答“我们如何访问数据?”,统计学回答“数据是如何关联的?”,Excel展示我们所发现的结论。其中S...

2018-04-04 16:57:08 401

原创 我就是项目做不出来也不用Excel! 翌日:Excel真好用(更好的解决办法见学习日志)

其实说白了很简单的一个计算收视率的公式。昨天一直卡在数据不连续上面。用python或者R又不知道怎么去解决这个问题。所以想用Excel去解决。之前还想着Excel不够高端,后来在deadline面前,能完成才是最重要的吧。问题是这样的,目前有一列YYYY/M/D HH:MM:SS形式的数据,用户的收视行为的操作粒度达到秒级。可是在有些秒数,用户并没有操作。这就导致用公式进行相加的时候无法完成进入流...

2018-04-03 09:16:52 457

转载 收视率的实时计算

作者:chinaman链接:https://www.zhihu.com/question/19573160/answer/12256733来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。尼尔森和索福瑞:收视率的起源是应广告主们为知晓花钱值不值而诞生。这活就交予市场调查公司完成。走的仍是市场调查的路子。收视率调查和所有市场调查如人口普查没什么两样。了解了人口普查的操作方...

2018-03-31 09:59:23 2407

转载 MySql中 DATEDIFF 函数 和 TIMESTAMPDIFF 时间 函数

转载地址https://blog.csdn.net/zhpengfei0915/article/details/20033837买了本SQL sever的书,看到处理日期的函数,发现MySQL中的datediff函数只能设置两个参数,即时间的开始和结尾,但是sql sever中的可以设置三个。好巧不巧我就是要以分钟为间隔。所以发现了这位老哥的帖子。如下:在 MySql中对于时间处理方式比较多,不过...

2018-03-30 20:32:22 609

原创 浅析我为什么这么忙

昨天晚上临危受命写了一版数据分析的计划书,今天一大早就带着去和老师还有台长在星巴克碰面了。不得不感叹姜还是老的辣。电视台台长虽然不太懂技术,经过一番交谈之后,在我看来是一个非常不错的产品,他能准确的把握问题的关键,找到客户需求的点。和他谈话,学习了到了很多,思维方式和谈话技巧都学到了,也意识到自己是多么的幼稚,看了两本书就以为自己对于运营有一定的想法了,哪些都只是别人的想法而已。所以更加坚定了...

2018-03-30 17:31:15 390 1

原创 0基础学SQL (一)

1.    2 和'2' 并不一样。chr 列被定为字符串类型,并且在对字符串类型的数据进行大小比较时,使用的是和数字比较不同的规则。典型的规则就是按照字典顺序进行比较。该规则最重要的一点就是,以相同字符开头的单词比不同字符开头的单词更相近。2. SQL不识别“= NULL”和“<>NULL”3.想不清楚条件的时候画个文氏图。通过文氏图可以方便地确认由多个条件组合而成的复杂的SQL 语...

2018-03-29 16:44:04 1079

空空如也

空空如也

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

TA关注的人

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