格式化日期

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 函数收集的更多相关文章

  1. mysql自定义函数收集

    代码: 查找字符串 in_string 中,存在多少个字符串 in_find_str delimiter $$ DROP FUNCTION IF EXISTS `fn_findCharCount` $ ...

  2. mysql 自定义函数

    原文:http://www.cnblogs.com/zhangminghui/p/4113160.html 引言 MySQL本身提供了内置函数,这些函数的存在给我们日常的开发和数据操作带来了很大的便利 ...

  3. mysql 日期函数总结

    1.0 格式化:DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据. 语法 DATE_FORMAT(date,format) date 参数是合法的日期.format 规定日期/时间的 ...

  4. Javascript常用方法函数收集(二)

    Javascript常用方法函数收集(二) 31.判断是否Touch屏幕 function isTouchScreen(){ return (('ontouchstart' in window) || ...

  5. MySQL concat函数的使用

    MySQL concat函数是MySQL数据库中众多的函数之一,下文将对MySQL concat函数的语法和使用进行说明,供您参考和学习. MySQL concat函数使用方法:CONCAT(str1 ...

  6. mysql常用函数参考

    mysql常用函数参考   对于针对字符串位置的操作,第一个位置被标记为1. ASCII(str) 返回字符串str的最左面字符的ASCII代码值.如果str是空字符串,返回0.如果str是NULL, ...

  7. MySQL replace函数替换字符串语句的用法(mysql字符串替换)

    MySQL replace函数我们经常用到,下面就为您详细介绍MySQL replace函数的用法,希望对您学习MySQL replace函数方面能有所启迪. 最近在研究CMS,在数据转换的时候需要用 ...

  8. 第十章 MySQL 常用函数

    第十章 MySQL 常用函数 第一节:日期和时间函数 1,CURDATE() 返回当前日期:2,CURTIME() 返回当前时间:3,MONTH(d) 返回日期 d 中的月份值,范围是 1~12 第二 ...

  9. Mysql时间函数

    http://blog.sina.com.cn/s/blog_6d39dc6f0100m7eo.html mysql中函数和关键字不区分大小写.下文函数的datetime参数处既可以用时间字符串也可以 ...

随机推荐

  1. Python2.7集成scrapy爬虫错误解决

    运行报错: NotSupported: Unsupported URL scheme 'https':.... 解决方法:降低对应package的版本 主要是scrapy和pyOpenSSL的版本 具 ...

  2. 面试可能遇到的关联式容器(map、set等)相关问题

    >>>. map与set的区别是什么,各有哪些优势?   map中存储的数据是以键值对(key - value)形式并且通过排序(比较key,默认以 '<' 方式排序)存在的( ...

  3. 高并发场景-请求合并(一)SpringCloud中Hystrix请求合并

    背景 在互联网的高并发场景下,请求会非常多,但是数据库连接池比较少,或者说需要减少CPU压力,减少处理逻辑的,需要把单个查询,用某些手段,改为批量查询多个后返回. 如:支付宝中,查询"个人信 ...

  4. 我把这个贼好用的Excel导出工具开源了!!

    写在前面 不管是传统软件企业还是互联网企业,不管是管理软件还是面向C端的互联网应用.都不可避免的会涉及到报表操作,而对于报表业务来说,一个很重要的功能就是将数据导出到Excel.如果我们在业务代码中, ...

  5. matlab中subplot 在平铺位置创建坐标区

    来源:https://ww2.mathworks.cn/help/matlab/ref/subplot.html?searchHighlight=subplot&s_tid=doc_srcht ...

  6. IntelliJ IDEA 调试 Java 8 Stream,实在太香了!

    前段时间,栈长发布了一篇关于 Java 8 Optional.map 的实用文章,留言区就有的人说 Java 8 的语法糖不方便调试,还要视情况使用. 留言区也有人说 IntelliJ IDEA 早已 ...

  7. Java变量命名前俩个字母仅含有一个大写字母的坑

    背景 前几周在做项目fetch切换,即将HttpUtils调用改成使用Feign调用.大概代码如下: // 原代码 String resultJson = HttpUtil.get(url + &qu ...

  8. 极简 Node.js 入门 - 4.5 双工流

    极简 Node.js 入门系列教程:https://www.yuque.com/sunluyong/node 本文更佳阅读体验:https://www.yuque.com/sunluyong/node ...

  9. 关于 Promise 的一些简单理解

    一.ES6 中的 Promise 1.JS 如何解决 异步问题? (1)什么是 同步.异步? 同步指的是 需要等待 前一个处理 完成,才会进行 下一个处理. 异步指的是 不需要等待 前一个处理 完成, ...

  10. MeteoInfoLab脚本示例:水汽通量散度计算

    用ncep数据计算水汽通量散度的脚本.需要air, uwnd, vwnd和rhum变量.数据是4维数据,需要固定时间维和高度维,数据中纬度维的数据是反向的,因此读取时需要特殊的设置(::-1).脚本中 ...