关于字符串转换为日期型数据

有格式为“01-Aug-20”的字符串,能否用帆软的TODATE()函数直接转换为日期型数据?

FineReport eying2 发布于 2020-8-26 16:22 (编辑于 2020-8-26 17:00)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
eying2Lv2见习互助
发布于2020-9-3 17:51

算了,我还是曲线救国,先用swich()把Aug转换为08,再转为日期型数据了。

公式为(假设字符串在C2单元格):

todate(REPLACE(C2,MID(C2,4,3),SWITCH(MID(C2,4,3),"Jan","01","Feb","02","Mar","03","Apr","04","May","05","Jun","06","Jul","07","Aug","08","Sep","09","Oct","10","Nov","11","Dec","12")),"dd-MM-yy")

最佳回答
1
LarryAbbyLv5中级互助
发布于2020-8-26 16:27(编辑于 2020-8-26 16:27)

1.png可以的,

SELECT TO_DATE('01-Aug-20','DD-MM-YY') FROM DUAL;

  • eying2 eying2(提问者) 我说的是帆软的TODATE()函数,不是SQL
    2020-08-26 17:00 
  • LarryAbby LarryAbby 回复 eying2(提问者) 也可以做就是比较麻烦,把【Aug】从字符串中截取出来,然后再转成数字,再和之前的【日】和【年】拼接到一起,最后用todate转成日期
    2020-08-26 17:06 
最佳回答
1
jongwangLv6中级互助
发布于2020-8-26 17:41

TODATE(date(

CONCATENATE("20",right("01-Aug-20",2)),

INARRAY(mid("01-Aug-20",4,3),array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec")),

left("01-Aug-20",2)

))


最佳回答
0
超爱冰阔落Lv5见习互助
发布于2020-8-26 17:08

好像不太行

  • 3关注人数
  • 1074浏览人数
  • 最后回答于:2020-9-3 17:51
    请选择关闭问题的原因
    确定 取消
    返回顶部