mysql presto 函数收集
格式化日期
presto: select date_format(CURRENT_DATE - INTERVAL '1' month, '%Y-%m')
mysql:date_format(DATE_ADD(data_date,INTERVAL 1 MONTH ), '%Y-%m')
计算环比同比思路
环比:(本月-上月)/上月
1,先查出本月月份和值
2,再查出上月的值 利用 interval + '1' month 让月份增加一个月,即让上个月的值变成本月的值
3,通过left join 月份来计算 环比 这样相同月份的值就是 表1为本月 表2为上月 通过环比公司即可实现计算
with a as(select month(cast(createymd as date)) month,count(task_id) tjl
from hive.bdc_dwd.dw_fact_task_new_ss_daily
where acct_time=FORMAT_DATETIME(DATE_ADD('day',-1,CURRENT_TIMESTAMP),'yyyy-MM-dd')
and order_mode not in (2,3,6,7)
and par_order_id = 0
AND (from_cid in (149,192,199,121,126,127,130,197,191,198) or category1id in (4782,5892))
AND category1id not in(4,9,21,448,2107,5787,5857,5788,4788,4791,3064)
and createymd >= '2019-05-01'
and category1id IN (1234, 1310, 2186, 2207, 2495, 5044, 5435,2976,1394,5,749,6,
5892, 5415, 5892,2035,2730,3429,3430,4794, 4792, 4791, 4790, 4788, 5415,4782,
4017, 4016, 3849, 3514, 3513, 3512,3430, 2841, 2839, 2834, 2832, 2730,2093, 1342, 471, 12, 13,
5997, 5705, 5234, 5180, 5179, 5178, 5122, 4789, 4348, 4347, 4063, 4062, 3850, 3128, 2976, 2766, 2559, 2481, 2243, 1941, 1590, 1394, 1387, 1233, 1232, 749, 1213)
group by 1
order by 1),
b as(select month(cast(createymd as date)) + 1 month,count(task_id) tjl
from hive.bdc_dwd.dw_fact_task_new_ss_daily
where acct_time=FORMAT_DATETIME(DATE_ADD('day',-1,CURRENT_TIMESTAMP),'yyyy-MM-dd')
and order_mode not in (2,3,6,7)
and par_order_id = 0
AND (from_cid in (149,192,199,121,126,127,130,197,191,198) or category1id in (4782,5892))
AND category1id not in(4,9,21,448,2107,5787,5857,5788,4788,4791,3064)
and createymd >= '2019-05-01'
and category1id IN (1234, 1310, 2186, 2207, 2495, 5044, 5435,2976,1394,5,749,6,
5892, 5415, 5892,2035,2730,3429,3430,4794, 4792, 4791, 4790, 4788, 5415,4782,
4017, 4016, 3849, 3514, 3513, 3512,3430, 2841, 2839, 2834, 2832, 2730,2093, 1342, 471, 12, 13,
5997, 5705, 5234, 5180, 5179, 5178, 5122, 4789, 4348, 4347, 4063, 4062, 3850, 3128, 2976, 2766, 2559, 2481, 2243, 1941, 1590, 1394, 1387, 1233, 1232, 749, 1213)
group by month(cast(createymd as date)) + 1
order by 1)
select month,case when hb is null or hb = 0 then 0 else hb end from(select a.month,(a.tjl-b.tjl) *1.0000/b.tjl hb
from a left join b on a.month = b.month
order by 1)
mysql presto 函数收集的更多相关文章
- mysql自定义函数收集
代码: 查找字符串 in_string 中,存在多少个字符串 in_find_str delimiter $$ DROP FUNCTION IF EXISTS `fn_findCharCount` $ ...
- mysql 自定义函数
原文:http://www.cnblogs.com/zhangminghui/p/4113160.html 引言 MySQL本身提供了内置函数,这些函数的存在给我们日常的开发和数据操作带来了很大的便利 ...
- mysql 日期函数总结
1.0 格式化:DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据. 语法 DATE_FORMAT(date,format) date 参数是合法的日期.format 规定日期/时间的 ...
- Javascript常用方法函数收集(二)
Javascript常用方法函数收集(二) 31.判断是否Touch屏幕 function isTouchScreen(){ return (('ontouchstart' in window) || ...
- MySQL concat函数的使用
MySQL concat函数是MySQL数据库中众多的函数之一,下文将对MySQL concat函数的语法和使用进行说明,供您参考和学习. MySQL concat函数使用方法:CONCAT(str1 ...
- mysql常用函数参考
mysql常用函数参考 对于针对字符串位置的操作,第一个位置被标记为1. ASCII(str) 返回字符串str的最左面字符的ASCII代码值.如果str是空字符串,返回0.如果str是NULL, ...
- MySQL replace函数替换字符串语句的用法(mysql字符串替换)
MySQL replace函数我们经常用到,下面就为您详细介绍MySQL replace函数的用法,希望对您学习MySQL replace函数方面能有所启迪. 最近在研究CMS,在数据转换的时候需要用 ...
- 第十章 MySQL 常用函数
第十章 MySQL 常用函数 第一节:日期和时间函数 1,CURDATE() 返回当前日期:2,CURTIME() 返回当前时间:3,MONTH(d) 返回日期 d 中的月份值,范围是 1~12 第二 ...
- Mysql时间函数
http://blog.sina.com.cn/s/blog_6d39dc6f0100m7eo.html mysql中函数和关键字不区分大小写.下文函数的datetime参数处既可以用时间字符串也可以 ...
随机推荐
- xss的编码原理
把以前的笔记翻出来整理一下 最前方 xss如何选用编码原理,为什么 找到的挺清楚的文章了:https://www.cnblogs.com/p0laris/p/11898322.html浏览器解析有两种 ...
- 每日一个知识点系列:volatile的可见性原理
每日一个知识点系列的目的是针对某一个知识点进行概括性总结,可在一分钟内完成知识点的阅读理解,此处不涉及详细的原理性解读. img 看图说话 关键点1: 总线嗅探器(MESI 缓存一致性原理 ) 关键点 ...
- 帮你理清React的生命周期
这是一个从印记中文 | react官方文档提取总结的,算是帮自己理清并且强化记忆React的生命周期,以便以后编写组件的时候能够有更清晰的思路.本文如有纰漏,欢迎指正 整体上来讲,React生命周期分 ...
- Spring Environment对象获取属性
String[] activeProfiles = env.getActiveProfiles();//获取当前是启用哪一个个配置文件 System.out.println(Arrays.toStri ...
- nginx 1.12 HTTPS双向认证配置
使用openssl生成相关证书: #生成CA私钥,私钥会被加密,需要设置密码 openssl genrsa -aes256 -out ca.key 2048 #生成CA证书签名请求,需要输入CA私钥密 ...
- 083 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 02 构造方法-带参构造方法
083 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 02 构造方法-带参构造方法 本文知识点:构造方法-带参构造方法 说明:因为时间紧张, ...
- 9.23 T1 tree
题意描述: 给你一个长度为 \(n\) 的序列,让你从中选出 \(k\) 个数组成一个集合,定义这个集合的极限高度为\(a_i...a_k\) 的最大值. 让你求所有的集合极限高度 之和对 \(100 ...
- C#开启线程的四种方式
如果需要查看更多文章,请微信搜索公众号 csharp编程大全,需要进C#交流群群请加微信z438679770,备注进群, 我邀请你进群! ! ! 1.异步委托开启线程 public class Pro ...
- Ubuntu 20.04上通过Wine 安装微信
没有想过会在一个手机软件上花这么多心思,好在今天总算安装成功,觉得可以记录下这个过程,方便他人方便自己. 首先介绍下我使用过的其他方法,希望可以节省大家一些时间: Rambox Pro:因为原理是网页 ...
- 网络IO模型-异步选择模型(Delphi版)
其实关于这个模型,网络上也有一个案例说明 老陈使用了微软公司的新式信箱.这种信箱非常先进,一旦信箱里有新的信件,盖茨就会给老陈打电话:喂,大爷,你有新的信件了!从此,老陈再也不必频繁上下楼检查信箱了, ...