在Oracle中,我想通过传递季度值来提取季度的开始和结束日期。
例如 v_quarter ='Q2';
我想通过传递v_quarter值来获取开始和结束日期。我的会计年度也从四月开始。因此,第一季度将是4月至6月,第二季度将是7月至9月,依此类推。
谢谢!
答案 0 :(得分:0)
像这样吗?
第2-4行代表行生成器技术之一,并创建具有12个月的全年(“ yr”)(第4行)。
第2行:从TRUNC
到SYSDATE
的{{1}}返回01.01.2018。通过将月份('yyyy'
)加上十二次,可以创建从一月到十二月的月份。
第6-9行是“四分之一”,因为应用于日期值的level - 1
格式掩码返回四分之一。随着您的会计年度从4月开始,CASE切换季度。
最后,第11至14行返回您作为参数传递的季度的开始和结束月份(第14行;我使用'q'
,第一季度)。
q = 1