SQL
文章平均质量分 80
俩只猴
独自奋斗的程序猿
展开
-
Hive SQL之如何在row_number()等窗口函数中加where条件?
前言能翻到这篇博文的,想必大家对窗口函数的基本使用已经有了一定的了解,这里就不废话再去多说了。这篇博文主要讲的是,如果在窗口函数中加入where条件。为了方便理解,以下案例使用排名函数:row_number()来讲解。其他窗口函数同理,大家举一反三。本文你可以学习到:使用UNION ALL分之而治解决本问题使用窗口函数中的一个小技巧解决本问题 (简单高效)案例我们如果要对一组数据根据某个列去排名,一般会使用row_number(),但是如果我们要对某个列符合条件的才去row_number原创 2021-01-29 01:02:56 · 10395 阅读 · 2 评论 -
SQL优化之使用数学的方式动态的确定区间并统计02
前言今天在群里看到了一个小伙伴提的一个sql需求:把一列分为10个区间,按最大值和最小值去分区间,然后统计区间数据量。emmm,感觉和之前的那篇文章很像,但又有些许不错,而且他这个场景应用更频繁,所以总结一波。本文主要分为:一般的分段区间统计;指定步长的分段区间统计;动态计算步长的分段区间统计分段区间一个区间的包含左边界和右边界,比如[0,10),[10,20),…,[90,100).如上,是一组左闭有开的区间,步长gap为10。一般写法如下,可能我们会得到如下SQL:selec原创 2021-01-24 19:16:03 · 1354 阅读 · 1 评论 -
SQL优化之使用数学的方式优化SQL编码01
前言笔者最近工作大多写sql为主。所以在此记录一下工作中遇到的问题和解决方案。今天先写上一篇,之后也会将这类似的方法总结下来,发表在这里。在特定场景下如何利用数学优化SQL编码直接拿最近的一个需求举例,楼主习惯先写自己原先的笨方法,也是大多数人一下子就能想到的方法,然后在去写改进的方法。好了,说下具体需求:轻度汇总后的数据涉及到了标签打分。根据某列(数值型)的范围进行划分并打上相应的标签,并用该标签与标签评分表关联拿到评分。看完需求后,简单啊,开搞。为了方便,以下数据都用一个标签来讲。原创 2021-01-05 00:06:21 · 224 阅读 · 1 评论