
SQL
文章平均质量分 57
SQL
南风知我意丿
“知识,哪怕是知识的幻影,也会成为你的铠甲,保护你不被愚昧反噬”
展开
-
sql计算留存率
通常计算的时间间隔为次日、3日、7日、30日、60日,根据业务不同需求可以选择不同的计算方式以及时间间隔,重点是要和产品负责人以及运营人员对好指标口径。原创 2023-03-08 18:35:21 · 2323 阅读 · 0 评论 -
亿万级海量数据去重软方法
亿万级海量数据去重软方法原创 2023-03-03 18:20:42 · 1113 阅读 · 0 评论 -
MySQL 时间获取计算周、月、季度起止时间、开始时间结束时间
mysql周、季度、月、年时间操作原创 2023-03-02 16:36:14 · 2951 阅读 · 0 评论 -
weekofyear跨年问题
weekofyear 这一周算上一年还是下一年,`取决于这一周的大多数日期(4天以上)在哪一年`。算在前一年,就是前一年的最后一周;算在后一年就是后一年的第一周原创 2023-02-08 10:39:00 · 2042 阅读 · 0 评论 -
牛客SQL记录
牛客SQL刷题记录原创 2023-02-07 23:35:18 · 438 阅读 · 0 评论 -
SQL之exists、not exists
EXISTS 子查询找到的提交 NOT EXISTS 子查询中 找不到的提交 说明:不要去翻译为存在和不存在,把脑袋搞晕。原创 2022-09-07 16:25:00 · 1585 阅读 · 0 评论 -
Spark/Hive 行列转换
explodedemoexplode(map)lateral view explode(map)explode(array)lateral viewdemolateral view explode统计id出现次数lateral view parse_url_tuple列转行单列转多行LATERAL VIEW explode多列转多行LATERAL VIEW posexplodesplit行转列单行转多列split多行转多列max case when原创 2022-08-24 15:38:18 · 861 阅读 · 0 评论 -
Sql之各种Join
sql之各种join原创 2022-08-01 16:23:53 · 149 阅读 · 0 评论 -
Hive Sql之 count(distinct ) 优化
1. 少用count(distinct )建议用group by 代替 distinct 。原因为count(distinct)逻辑只会有一个reducer来处理,即使设定了reduce task个数,setmapred.reduce.tasks=100也一样,所以很容易导致数据倾斜。坊间传闻,在面对大数据量时很多大厂都“明令禁止使用distinct”。如sql语句:select count(distinct uid) from users建议改成: select count(*) fr原创 2022-05-12 22:53:35 · 1199 阅读 · 0 评论 -
Hive Sql之实际生产中几个复杂场景的
场景一:取当前数据的上一条和下一条,直到取到满足条件的为止.场景二:要计算每天每个员工当月累计的销售额,但是某些员工在某几天是没有销售记录的,怎么处理?场景三:使用HiveQL实现类似滑动窗口的效果.场景四:计算满足一定条件的连续..........转载 2022-07-21 16:05:31 · 676 阅读 · 0 评论 -
Hive Sql之用户行为分析(活跃。启动,留存,回访,新增)的一些经典案例
很简单的sql 用户分析语句 :只要自定义简单的udf函数 获取统计时间createdatms字段的使用的日历类 add方法 和simpledateformat 将long类型的 定义多个重载方法 获取返回值int类型 或者long类型 进行时间判断即可getdaybegin(天开始),比如2017-08-08这一天的createtime为15288888888888 获取到 152888880000(代表20170808 00:00:00)当天开始的凌晨 getWeekbegin,getMonthgi原创 2022-07-04 14:53:41 · 801 阅读 · 0 评论 -
从 join on 和 where 执行顺序认识T-sql查询执行顺序
1.join onSELECT 各个阶段都干了什么?(1)FROM 阶段(2)WHERE阶段(3)GROUP BY阶段(4)HAVING阶段(5)SELECT阶段(6)ORDER BY阶段例子解释1.join on 执行过程原创 2022-06-16 23:33:35 · 729 阅读 · 0 评论 -
Hive Sql之取非Group by字段数据的方法
执行以下hive ql语句:SELECT sid, class_id FROM table2 GROUP BY sid ;会报错:FAILED: Error in semantic analysis: Line 1:18 Expression not in GROUP BY key 'class_id'collect_set( col:any ) 返回一个数组: 解释:返回一个去重后的对象集合collect_list( col:any) 返回一个数组: 解释:返回一个不去原创 2022-05-12 22:49:38 · 1126 阅读 · 0 评论 -
记一次regexp_extract和regexp_replace的使用bug
项目场景:有一次需求需要使用到正则 去匹配一个连接字符,需要把他们分开,进行处理,发现了regexp_extract的一些使用 bug问题描述首先我们可以先看一下 regexp_extract的 使用用法regexp_extract(str, regexp[, idx]) - extracts a group that matches regexp字符串正则表达式解析函数。参数解释:其中:str是被解析的字符串regexp 是正则表达式idx是返回结果 取表达式的哪一部分 默认值为原创 2022-05-20 11:45:06 · 1028 阅读 · 0 评论