格式化日期

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. zabbix_server.conf配置文件参数

    NodeID: 在amster-child 的分布式架构中,这个ID是唯一标识zabbix node的号码 ListenPort:Trapper 类型Item监听的端口, SourceIP: 在连接其 ...

  2. jpa基本常识

    1.hibernate更新表结构配置 jpa hibernate框架配置 spring.jpa.properties.hibernate.hbm2ddl.auto = create-drop 其意思是 ...

  3. Python-鸡兔同笼问题

    鸡兔同笼问题 -- 今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何? --鸡和兔在一个笼子里,从上面数,有35个头:从下面数,有94只脚.问笼中各有几只鸡和兔 如何逻辑整理? -- 鸡头和兔子 ...

  4. django rest_framework serializer的ManyRelatedField 和 SlugRelatedField使用

    class BlogListSerializer(serializers.Serializer): id = serializers.IntegerField() user = BlogUserInf ...

  5. Lua 协同程序(coroutine)

    什么是协同(coroutine)? Lua 协同程序(coroutine)与线程比较类似:拥有独立的堆栈,独立的局部变量,独立的指令指针,同时又与其它协同程序共享全局变量和其它大部分东西. 协同是非常 ...

  6. JDK1.8前_HashMap的扩容机制原理

    最近在研究hashmap的扩容机制,作为一个小白,相信我的理解,对于一些同样是刚刚接触hashmap的白白是有很很大的帮助,毕竟你去看一些已经对数据结构了解透彻的大神谈hashmap的原理等,人家说的 ...

  7. 050 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 12 continue语句

    050 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 12 continue语句 本文知识点:continue语句 continue语句 continue ...

  8. VS 高级版本新建的项目如何降级使低版本 VS 可以打开

    转载:https://blog.csdn.net/u012814856/article/details/70325267 一.引言 这里因为工作的原因,公司项目使用的是 VS2015 的编译环境,但是 ...

  9. apline无法向gitlab上传git lfs问题

    1 背景 在k8s中基于alpine做底层系统的容器进行git lfs push操作时,发现报错无法上传成功 Fatal error: Server error: http://git.ops.xxx ...

  10. .NET Standard 简介

    系列目录     [已更新最新开发文章,点击查看详细] .NET Standard 是一套正式的 .NET API 规范,有望在所有 .NET 实现中推出. 推出 .NET Standard 的背后动 ...