问题聚集度Hive SQL

这篇具有很好参考价值的文章主要介绍了问题聚集度Hive SQL。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

问题聚集度:最小的分母占比,贡献最多的分子占比,即小规模贡献大问题。文章来源地址https://www.toymoban.com/news/detail-625224.html

select
	city_name
	,user_id
	,rf_type
	,deal_ord_cnt
	,sale_amt
	,rf_ord_cnt
	,rf_amt
	,rf_ra
	,rf_amt_ra
	,rf_all
	,ord_cnt_all
	,rf_gx
	,ord_cnt_gx
	,del_gx
	,row_number() over(partition by rf_type order by del_gx desc,rf_ra desc,user_id) as rn    -- 贡献差由大到小排序
	,sum(rf_ord_cnt) over(partition by rf_type order by del_gx desc,rf_ra desc,user_id) as rf_ordby    -- 分子累计
	,sum(deal_ord_cnt) over(partition by rf_type order by del_gx desc,rf_ra desc,user_id) as ord_cnt_ordby    -- 分母累计
	,(sum(rf_ord_cnt) over(partition by rf_type order by del_gx desc,rf_ra desc,user_id)) / rf_all as rf_ordby_ra    -- 分子累计占比曲线
	,(sum(deal_ord_cnt) over(partition by rf_type order by del_gx desc,rf_ra desc,user_id)) / ord_cnt_all as ord_cnt_ordby_ra    -- 分母累计占比曲线
	,((sum(rf_ord_cnt) over(partition by rf_type order by del_gx desc,rf_ra desc,user_id)) / rf_all -
		(sum(deal_ord_cnt) over(partition by rf_type order by del_gx desc,rf_ra desc,user_id)) / ord_cnt_all) del1    -- 累计贡献差
	,lead(((sum(rf_ord_cnt) over(partition by rf_type order by del_gx desc,rf_ra desc,user_id)) / rf_all -
		(sum(deal_ord_cnt) over(partition by rf_type order by del_gx desc,rf_ra desc,user_id)) / ord_cnt_all),1) 
			over(partition by rf_type order by del_gx desc,rf_ra desc,user_id) - 
			((sum(rf_ord_cnt) over(partition by rf_type order by del_gx desc,rf_ra desc,user_id)) / rf_all -
		(sum(deal_ord_cnt) over(partition by rf_type order by del_gx desc,rf_ra desc,user_id)) / ord_cnt_all) as del2    --二阶差分,大于0的部分为聚集部分
from
(
select
	city_name
	,user_id
	,deal_ord_cnt  -- 分母
	,sale_amt
	,rf_cancel_ord_cnt as rf_ord_cnt    -- 分子
	,rf_qx_amt as rf_amt
	,rf_cancel_ord_cnt / deal_ord_cnt as rf_ra    -- 监控指标
	,rf_qx_amt/sale_amt as rf_amt_ra
	,sum(rf_cancel_ord_cnt) over() as rf_all
	,sum(deal_ord_cnt) over() as ord_cnt_all
	,rf_cancel_ord_cnt / (sum(rf_cancel_ord_cnt) over()) as rf_gx    -- 分子贡献
	,deal_ord_cnt / (sum(deal_ord_cnt) over()) as ord_cnt_gx    -- 分母贡献
	,rf_cancel_ord_cnt / (sum(rf_cancel_ord_cnt) over()) - deal_ord_cnt / (sum(deal_ord_cnt) over()) as del_gx    -- 贡献差值
	,'取消订单' as rf_type
from table_refund
where rf_cancel_ord_cnt > 0    -- 限定分子>0
) t0

到了这里,关于问题聚集度Hive SQL的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Spark-SQL连接Hive的五种方法

    若使用Spark内嵌的Hive,直接使用即可,什么都不需要做(在实际生产活动中,很少会使用这一模式) 步骤: 将Hive中conf/下的hive-site.xml拷贝到Spark的conf/目录下; 把Mysql的驱动copy到jars/目录下; 如果访问不到hdfs,则将core-site.xml和hdfs-site.xml拷贝到conf/目录下; 重启spark-shell;

    2024年02月16日
    浏览(42)
  • flink sql 实战实例 及延伸问题:聚合/数据倾斜/DAU/Hive流批一体 等

    ⭐ 需求:上游是一个 kafka 数据源,数据内容是用户 QQ 等级变化明细数据(time,uid,level)。需要你求出当前每个等级的用户数。 ⭐ 需求:数据源:用户心跳日志(uid,time,type)。计算分 Android,iOS 的 DAU,最晚一分钟输出一次当日零点累计到当前的结果。 经过测试 在fl

    2024年02月22日
    浏览(49)
  • Hive Sql 大全(hive函数,hive表)

    本节基本涵盖了Hive日常使用的所有SQL,因为SQL太多,所以将SQL进行了如下分类: 一、DDL语句(数据定义语句): 对数据库的操作:包含创建、修改数据库 对数据表的操作:分为内部表及外部表,分区表和分桶表 二、DQL语句(数据查询语句): 单表查询、关联查询 hive函数

    2024年02月19日
    浏览(46)
  • [hive] 在hive sql中定义变量

    在Hive SQL中,可以使用 SET 命令来定义变量。 变量可以用于存储和引用常量或表达式的值,以便在查询中重复使用。 下面是定义和使用变量的示例: 使用 SET 命令定义了一个名为 my_var 的变量, 在查询中使用 ${my_var} 引用变量。这样,变量的值将被替换为实际的字符串,从而

    2024年02月03日
    浏览(35)
  • hive sql 和 spark sql的区别

    Hive SQL 和 Spark SQL 都是用于在大数据环境中处理结构化数据的工具,但它们有一些关键的区别: 底层计算引擎: Hive SQL:Hive 是建立在 Hadoop 生态系统之上的,使用 MapReduce 作为底层计算引擎。因此,它的执行速度可能相对较慢,尤其是对于复杂的查询。 Spark SQL:Spark SQL 则建

    2024年01月20日
    浏览(40)
  • 搭建hadoop和hive分析脚本

    搭建环境 hdfs操作 创建路径 上传 HIVE数据库操作 创库 建表 导入数据 导出文件 #输出路径 先选 数据分析校验输出 Hive会自动生成输出文件,并将结果写入这些文件中。你不需要提前创建 part-r-00000 文件,Hive会根据配置自动创建文件并命名 # 联合输出 $ javac -classpath $(hadoop cla

    2024年02月16日
    浏览(44)
  • Hive sql

    load data [local] inpath \\\'filepath\\\' [overwrite] into table tablename [partition(partcol1=val1,partcol2=val2...)] 有local就在本地文件系统 没有local就在hdfs分布式文件系统 如果有overwrite,则目标表(或者分区)中的已经存在的数据就会被删除,然后再将filepath指向的文件/目录中的内容添加到表

    2024年04月15日
    浏览(34)
  • Hive SQL血缘解析

    Druid可以直接获得所有的列 http://t.csdn.cn/mO4TX 利用Hive提供的LineageLogger与Execution Hooks机制做血缘 https://blog.csdn.net/qq_44831907/article/details/123033137 Apache Calcite gudusoft 解析方案 商业 https://blog.csdn.net/qq_31557939/article/details/126277212 6.github开源项目: https://github.com/Shkin1/hathor https://github

    2024年02月04日
    浏览(33)
  • hive sql 拆解字段

    在Hive SQL中,拆解字段通常涉及到字符串操作,如将一个包含多个部分的字符串拆解成多个独立的字段。可以使用内置的字符串函数来实现这个目标。以下是一些常见的用于拆解字段的字符串函数和示例: 1.SUBSTRING(str, start, length):这个函数用于从字符串中提取子字符串。你可

    2024年02月11日
    浏览(34)
  • Hive SQL题库(初级)

    第一章 环境准备 1. 1  建表语句 1.2 数据准备 (1)创建/opt/module/data目录 (2)将如下4个文件放到/opt/module/data目录下 1. 3  插入数据 (1)插入数据 (2)验证插入数据情况 第二章 简单查询 2.1 查找特定条件 2.1.1 查询姓名中带“冰”的学生名单 2.1.3 检索课程编号为“04”且分

    2024年02月10日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包