我的日期格式为“ 2019/05/21 00:00:00”,我需要使用SQL将其转换为“ 21-JUN-19”。我该如何转换呢?
答案 0 :(得分:1)
假设源值是一个字符串,则
to_date
,并使用适当的格式掩码)to_char
,并再次使用适当的格式掩码)顺便说一句,为什么要将2019 / 05 / 21转换为 jun ?可以做到,没问题(ADD_MONTHS
就可以做到),只是想知道您是故意还是错误地做到了。
SQL> select to_char(to_date('2019/05/21 00:00:00', 'yyyy/mm/dd hh24:mi:ss'), 'dd-mon-yy') result from dual;
RESULT
---------
21-may-19
SQL>
答案 1 :(得分:1)
您可以使用substr()
和to_date()
:
select to_date(substr('2019/05/21 00:00:00', 1, 10), 'YYYY/MM/DD')
from dual;