我尝试了一个当when语句的情况

时间:2019-04-19 04:34:39

标签: oracle

我尝试使用

case 
   when cc.create_date_time < 04/17/2019 ' 
      then 'counted'
   when cc.create_date_time > 04/17/2019  
      then 'need counted'
   else null
end as TIME_GAP

没有运气-即使在该日期之前已完成需要说明计数的结果,但所有数据的“已计数”返回第一行中的内容...我该如何解决...? / p>

如果某件事情被算作2019年4月17日,如果在该日期之前已被算作是一件好事,那么我需要它告诉我...谢谢

1 个答案:

答案 0 :(得分:0)

如果CREATE_DATE_TIME列的数据类型为DATE(应该是),为什么将它与字符串进行比较? '04/17/2019'是一个字符串。请使用DATE文字,或使用TO_DATE函数和适当的格式掩码将该字符串转换为日期,例如

case when cc.create_date_time < date '2019-04-17' then ...

case when cc.create_date_time < to_date('04/17/2019', 'mm/dd/yyyy') then ...