dyllove98

在oracle中我们经常会和日期打交道,在做报表的时候经常会用日报,周报,月报之类的条件进行分组;

我写了些例子来启发下大脑


          
          
select Sysdate from dual
select to_char(sysdate,\'yyyy\') as 年 from dual
select to_char(sysdate,\'mm\') as 月 from dual
select to_char(sysdate,\'dd\') as 日 from dual
select to_char(sysdate,\'iw\') as 周一到周日为一周 from dual
select to_char(sysdate,\'ww\') as 一月一日加6为一周类推 from dual
select to_char(sysdate,\'HH24:mi:ss\') as 时分秒 from dual


--根据年分组
select to_char(sysdate,\'yyyy\') as 年 from dual
--根据月分组
select to_char(sysdate,\'yyyy-mm\') as 年 from dual
--根据天分组
select to_char(sysdate,\'yyyy-mm-dd\') as 年 from dual
--根据周分组
select to_char(sysdate,\'yyyy-iw\') as 年 from dual
select to_char(sysdate,\'yyyy-ww\') as 年 from dual


--根据省份分组,省份列种包含市(福建福州,黑龙江牡丹江)
/*
思路:1.先用substr(列明,开始位置第一个为1,截取字数)来切割省份列
      2.截取后黑龙江变成黑龙后要恢复回来  
      case  
      when substr(列名,1,2) like \'黑龙\' then \'黑龙江\'
      when substr(列名,1,2) like \'内蒙\' then \'内蒙古\'
      else 
       to_char(substr(列明,1,2))
      end
*/

 

分类:

技术点:

相关文章:

  • 2021-11-18
  • 2022-02-27
  • 2021-11-18
  • 2021-11-18
猜你喜欢
  • 2022-12-23
  • 2021-11-28
  • 2021-12-22
  • 2021-12-23
  • 2022-12-23
  • 2021-11-06
相关资源
相似解决方案