首页 > 社交 > 科普中国

大数据组件常用命令

常驻编辑 科普中国 2022-10-20 函数   组件   字符   元素   命令   参数   日期   类型   功能   文件   时间   常用命令   数据


Knu拜客生活常识网

8. 返回日期中的年/季度/月/日


Knu拜客生活常识网

select year('2021-08-14 10:05:20');
输出:2021
select quarter('2021-08-14 10:05:20');
输出:3
select month('2021-08-14 10:05:20');
输出:8
select day('2021-08-14 10:05:20');
输出:14


Knu拜客生活常识网

9. 返回日期中的时/分/秒


Knu拜客生活常识网

select hour('2021-08-14 10:05:20');
输出:10
select minute('2021-08-14 10:05:20');
输出:5
select second('2021-08-14 10:05:20');
输出:20


Knu拜客生活常识网

10. 返回日期在当年的第几周


Knu拜客生活常识网

select weekofyear('2021-08-14 10:05:20');
输出:32


Knu拜客生活常识网

11. 返回日期在当前周的第几天(注:周日为第1天)


Knu拜客生活常识网

select dayofweek('2021-08-14 10:05:20');  --周六
输出:7


Knu拜客生活常识网

12. 日期比较函数,返回开始日期减去结束日期的天数


Knu拜客生活常识网

说明:前者大于后者,返回值为正,否则,返回值为负。

select datediff('2021-08-14','2021-08-08');
输出:6
select datediff(current_date(),date_add(current_date(),-10));
输出:10
select datediff(current_date(),date_add(current_date(),10));
输出:-10


Knu拜客生活常识网

13. 日期减少函数,返回日期前n天的日期


Knu拜客生活常识网

select date_sub('2021-08-14',6);
输出:2021-08-08


Knu拜客生活常识网

14. 日期增加函数,返回日期后n天的日期


Knu拜客生活常识网

select date_add('2021-08-14',6);
输出:2021-08-20
--取得昨天日期:
select date_add(from_unixtime(unix_timestamp(),'yyyy-MM-dd'),-1);
select date_sub(from_unixtime(unix_timestamp(),'yyyy-MM-dd'),1);
-- 取得明天日期:
select date_add(from_unixtime(unix_timestamp(),'yyyy-MM-dd'),1);
select date_sub(from_unixtime(unix_timestamp(),'yyyy-MM-dd'),-1);


Knu拜客生活常识网

15. 返回两个日期之间包含的月数(结果为double类型)


Knu拜客生活常识网

select months_between('2021-10-14','2021-05-04');
输出:5.32258065


Knu拜客生活常识网

16. 获取日期月初(参数MM),年初日期(参数YY)


Knu拜客生活常识网

select trunc(current_date(),'MM');
输出:2021-08-01
select trunc(current_date(),'YY');
输出:2021-01-01


Knu拜客生活常识网

17. 获取日期当月最后一天


Knu拜客生活常识网

select last_day(current_date());
输出:2021-08-31


Knu拜客生活常识网

18. 返回当前日期之后的下个星期几的日期


Knu拜客生活常识网

说明:参数为MO,TU,WE,TH,FR,SA,SU,也可以是两个缩写字母可以是三个可以是全名。

select next_day('2021-08-14', 'TU'); --得到021-08-14后的下个周二
输出:2021-08-17
select next_date('2020-01-01','Fri');  --得到2020-01-01后的下个周五
输出:2020-01-03


Knu拜客生活常识网

19. yyyymmdd和yyyy-mm-dd日期间切换


Knu拜客生活常识网

思路:先转换成时间戳,再由时间戳转换为对应格式。

select from_unixtime(unix_timestamp('20210814','yyyymmdd'),'yyyy-mm-dd');
输出:2021-08-14
select from_unixtime(unix_timestamp('2021-08-14','yyyy-mm-dd'),'yyyymmdd') ;
输出:20210814


Knu拜客生活常识网

20. 取最近30天数据


Knu拜客生活常识网

seelct * from table where datediff(current_timestamp(),create_time)<=30;
--要从表中运行


Knu拜客生活常识网

21. 两个日期相差多少小时


Knu拜客生活常识网

select (unix_timestamp('2021-08-14 10:18:54')-unix_timestamp('2021-08-14 08:18:54'))/3600;
输出:2.0


Knu拜客生活常识网

22. 两个日期相差多少分钟

相关阅读:

  • tan30度等于多少(三角函数必背公式)
  • cos30度是多少(三角函数所有公式大全)
  • 如何插入函数(将多个单元格内容合并)
  • 怎么定义函数(matlab中script和function区别)
  • excel怎么用函数 电脑表格怎样设置函数公式?
  • 函数图像怎么画 二次函数图像生成器?
  • C++|深入理解智能指针
  • typescript4.7
  • 「技术干货」Linux内核代码追踪之UDP调用过程
  • 单片机时间片轮询任务调度的实现方法
    • 网站地图 |
    • 声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。文章内容仅供参考,不做权威认证,如若验证其真实性,请咨询相关权威专业人士。