我将所有日期作为varchar2(10)插入到表中,并格式化为'mm/dd/yyyy'。我需要的是以下格式'mm-dd-yyyy'和日期数据类型。 没有PLSQL我的实现将是:
Oracle to_date,从mm/dd/yyyy到dd-mm-yyyy
select day||'-'||month||'-'||year as formatted_date from
(select
extract(day from (select to_date('1/21/2000','mm/dd/yyyy') from dual)) as day,
to_number(extract(month from (select to_date('1/21/2000','mm/dd/yyyy') from dual)),09) as month,
extract(year from (select to_date('1/21/2000','mm/dd/yyyy') from dual)) as year
from dual);
结果是:21-1-2000而不是21-01-2000如预期。
当添加额外的TO_DATE(,)为:
to_date(day||'-'||month||'-'||year,'DD-MM-YYYY') as formatted_date
它也不会更改日期和月份域海誓山盟。
您可以用'{}'工具栏按钮格式化源代码。它通常看起来更好。 –
您应该将日期保存为日期 –