开窗函数-计算每个学生总成绩相差5分以内同学的各科平均成绩
题目 现有学生成绩表(t_scores) 包含学生id、语文、数学、成绩,现为对比总分成绩差不多的学生其各科成绩表现水平,计算出与自己总分相差5分以内(+-5)的同学各科平均分; 样例数据 +-------------+----------+-------+ | student_id | chinese | math | +-------------+----------+-------+ | 1
开窗函数-优雅的计算每个雇员所在部门薪资最高的员工姓名
题目 有雇员表t_employees,包含员工姓名、部门、薪资和年龄,请计算出每个雇员所在部门薪资最高的员工姓名 样例数据 +--------+--------------+---------+------+ | name | dept | salary | age | +--------+--------------+---------+------+ | Lisa | Sales | 1000
开窗函数 spark sql实现累加、累积计数、累乘
前面对开窗函数做了基础知识介绍,今天我们对其应用做详细介绍。通过开窗函数实现累积求和(累加),累积计数,累乘(累积相乘)。有一定难度,建议先思考然后再阅读 1.样例数据 +-----+-----------+---------+-------------+ | id | group_id | amount | c_date | +-----+-----------+---------+------
13. [实际案例]-行列转化-拆分有key但是没有分隔符且无序字符串
一、题目 当前有以下数据 t_detai, +-----+------------------+ | id | detail | +-----+------------------+ | 1 | A:1,2,3,B:2,3,4 | | 2 | A:3,4 | | 3 | B:1,3 | | 4 | B:1,2,A:2,3,4 | | 5 | | +-----+------------------+
12.行列互转-横表竖表互相转换的高级写法
一、多行转多列(竖表转横表) 原始数据中是一个竖表,每个学生的每个学科一行数据,对其转换成一张横表,即表中学生id为主键,包含语文、数学、英语三列,列值为对应学科分数。 1、基础数据 有学生成绩表,包含学生id、学科、成绩 +-------------+----------+--------+ | student_id | subject | score | +-------------+----
11.sparksql-unpivot子句
unpivot 子句 今天给大家带来spark的一个新的知识点,UNPIVOT,这个不是函数,是一个子句。 描述 UNPIVOT 子句将多个列转换为多行,用于 SELECT 子句中。UNPIVOT 子句可以在表名或子查询之后指定。 语法 UNPIVOT ( { single_value_column_unpivot | multi_v
10.sparksql-pivot子句
pivot 子句 今天给大家带来spark的一个新的知识点,pivot,这个不是函数,是一个子句。 描述 PIVOT 子句用于数据透视。我们可以根据特定列的值获取聚合值,这些值将转变成在 SELECT 子句中使用的多个列。PIVOT 子句可以在表名或子查询之后指定。 语法 PIVOT ( { aggregate_expression
09.列转行-lateral view outer posexplode及posexplode_outer多列对应转行
一、基础数据 现有骑手id,订单id列表,订单配送距离列表,配送费列表,其中订单id、配送距离、配送费一一对应。 +-----------+---------------------------+----------------------------+-----------------------------+ | rider_id | order_list | distance_list |
