SQL语言翻译

小白求翻译SQL语言:when datename between to_char(ADD_MONTHS(trunc(to_date('${datename}','yyyymmdd'),'Q'),-3),'yyyymmdd')  and '${datename}' then QUARTER_NAME

yzm213979 发布于 2021-7-24 15:17
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
张洪威Lv6高级互助
发布于2021-7-24 15:23

trunc(to_date('${datename}','yyyymmdd'),'Q')     datename所在季度的第一天

ADD_MONTHS(trunc(to_date('${datename}','yyyymmdd'),'Q'),-3)   季度第一天往前推3个月

  • 爱喝咖啡的番薯 爱喝咖啡的番薯(提问者) 其实这句话我之前是明白,完整的句子是这样的:case when datename between to_char(ADD_MONTHS(trunc(to_date(\'${datename}\',\'yyyymmdd\'),\'Q\'),-3),\'yyyymmdd\') and \'${datename}\' then QUARTER_NAME end QUARTER_NAME, case when datename between to_char(ADD_MONTHS(trunc(to_date(\'${datename}\',\'yyyymmdd\'),\'mm\'),-2),\'yyyymmdd\') and \'${datename}\' then MONTH_NAME end MONTH_NAME, case when datename between to_char(trunc(to_date(\'${datename}\',\'yyyymmdd\'),\'iw\')-21,\'yyyymmdd\') and \'${datename}\' then week_name end week_name, 这句话是在定义什么嘞
    2021-07-24 15:37 
  • 张洪威 张洪威 回复 爱喝咖啡的番薯(提问者) case when 拿来判断的,在日期帆软内就取quartername,百度搜下case when用法就懂了。
    2021-07-24 15:55 
  • 爱喝咖啡的番薯 爱喝咖啡的番薯(提问者) 回复 张洪威 把片段的语言规则合起来研究了下,这个好像是这个意思:表示时间的列名称(季度从当前输入日期的前一个季度开始显示,月份从当前输入日期的前2个月开始显示,周从当前输入日期的前3个周开始显示)
    2021-07-24 16:30 
  • 2关注人数
  • 354浏览人数
  • 最后回答于:2021-7-24 15:23
    请选择关闭问题的原因
    确定 取消
    返回顶部