时间的控制处理,如果字段里面的时间是空的,则补取参数日期

select  case when to_char(loss_occurred_date,'yyyy-mm-dd')>='${startdate1}'  and to_char(loss_occurred_date,'yyyy-mm-dd')<='${enddate1}'   and loss_occurred_cnt=1 then ABS(datedif(nvl(pr.report_date,TIMESTAMP('${enddate1}'||'23:59:59')),pr.accident_date,'hh') )  else 0 end   as accident_report_hh 

from holo_ads_agidep_case_cycle_stat_dd  pr

where report_time is null

image.png

FineBI yzm400067 发布于 2024-7-8 10:19 (编辑于 2024-7-8 10:35)
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
华莉星宸Lv7资深互助
发布于2024-7-8 10:21

试试

select case

         when to_char(loss_occurred_date, 'yyyy-mm-dd') >= '${startdate1}' and

              to_char(loss_occurred_date, 'yyyy-mm-dd') <= '${enddate1}' and

              loss_occurred_cnt = 1 then

          ABS(datedif(nvl(pr.report_date,

                          TIMESTAMP('${enddate1}' || ' 23:59:59')),

                      pr.accident_date,

                      'hh'))

         else

          0

       end as accident_report_hh

  from holo_ads_agidep_case_cycle_stat_dd pr

 where report_time is null

  • yzm400067 yzm400067(提问者) 这个就是我源代码啊··· 修改了哪里
    2024-07-08 10:24 
  • 华莉星宸 华莉星宸 回复 yzm400067(提问者) 时间前面加了一个空格,TIMESTAMP('${enddate1}' || ' 23:59:59')
    2024-07-08 10:25 
  • yzm400067 yzm400067(提问者) 回复 华莉星宸 也不行, RuntimeException: java.util.concurrent.ExecutionException: com.finebi.common.exception.conf.table.FineSqlErrorException: 错误代码:62400001ERROR: syntax error at or near "'2024-07-08'" Position: 280
    2024-07-08 10:27 
  • 华莉星宸 华莉星宸 回复 yzm400067(提问者) 你上面的代码没改完 时间的地方
    2024-07-08 10:28 
  • yzm400067 yzm400067(提问者) 回复 华莉星宸 我直接复制了您给我的SQL。还要改哪里呀
    2024-07-08 10:30 
最佳回答
0
luojian0323Lv7资深互助
发布于2024-7-8 10:22

你觉得TIMESTAMP('${enddate1}'||'23:59:59'))这个参数值是:2024-07-08 00:00:00两个格式的日期拼上'23:59:59' 会是啥结果?

  • yzm400067 yzm400067(提问者) 改成日期格式也一样··· 我截图忘记改了 我更新下截图
    2024-07-08 10:26 
最佳回答
0
CD20160914Lv8专家互助
发布于2024-7-8 11:14

你先说一下你到底用的是什么数据库?是oracel吗?

  • 4关注人数
  • 301浏览人数
  • 最后回答于:2024-7-8 11:14
    请选择关闭问题的原因
    确定 取消
    返回顶部