赞
踩
select trunc(current_date(),'MM');
//结果:2022-08-01
select trunc(current_date(),'YY');
//结果:2022-01-01
select current_date() - interval 1 day;
//结果:2022-08-29
select current_date() - interval 1 month;
//结果:2022-07-30
select current_date() - interval 1 year;
//结果:2021-08-30
//还可以减时分秒
还可以按照年月,月日,日时,时分,分秒的格式来间隔
select current_date() - INTERVAL '1 1' year_month;
select trunc(add_months(current_date(),-1),'MM');
SELECT
date_add(start_date, indexs) trade_date,1 flag
FROM (SELECT '2022-08-01' AS start_date, '2022-10-11' AS end_date)
dt lateral VIEW posexplode(split(space(DATEDIFF(end_date, start_date)), '')) dt_sp AS indexs,val;
select DATE_ADD(NEXT_DAY('2022-10-11','MO'),-7);
//周日为0
select pmod(datediff(CURRENT_DATE(),"1920-01-01") - 3,7);
//第一个参数是数字,第二个参数是要舍入的小数位数。如果为0,则结果没有小数点
select format_number(898765.099,2);
SELECT date_format(add_months(concat(year(date_sub(current_date(),1)),'-',substr(concat('0',floor((month(date_sub(current_date(),1))+2)/3)*3+1),-2),'-01'),-6),'yyyy-MM-dd') start_date;
SELECT date_format(add_months(last_day(concat(year(date_sub(current_date(),1)),'-',quarter(date_sub(current_date(),1))* 3,'-01')),-3),'yyyy-MM-dd') end_date;
//本季度第一天
SELECT date_format(add_months(concat(year(date_sub(current_date(),1)),'-',substr(concat('0',floor((month(date_sub(current_date(),1))+2)/3)*3+1),-2),'-01'),-3),'yyyy-MM-dd') start_date;
//本季最后一天
SELECT date_format(last_day(concat(year(date_sub(current_date(),1)),'-',quarter(date_sub(current_date(),1))* 3,'-01')),'yyyy-MM-dd') end_date;
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。