如何将日期值转换为oracle日期值
本文关键字:日期 oracle 转换 | 更新日期: 2023-09-27 18:27:32
我有一个要求,需要将日期值(2013年8月14日)转换为(2013年八月14日)。我使用了以下查询,但它不起作用:
select *
from ind_holidays
where hol_date between to_date('11-08-2013', 'dd-mmm-yyyy hh24:mi:ss') AND to_date('17-08-2013', 'dd-mmm-yyyy hh24:mi:ss')
ORDER by name
to_date格式字符串中的时间部分是不必要的。更改您的查询如下:
select *
from ind_holidays
where hol_date between to_date('11-08-2013', 'dd-mm-yyyy') AND to_date('17-08-2013', 'dd-mm-yyyy')
ORDER by name
并使用CCD_ 1而不是CCD_
Oracle的TO_DATE
函数希望格式字符串与输入匹配。
to_date('11-08-2013', 'dd-mm-yyyy')
(注意:mm
表示2位数的月份编号,而不是mmm
-三个字符的月份使用mon
)将字符串转换为日期,您的查询应该处理该日期。hh24:mi:ss
部分不是必需的,因为字符串中没有时间组件。不过,我机器上的Oracle 11g仍然可以处理它。
但是你的问题说
我需要将日期值(2013年8月14日)转换为
哪一个看起来可能是输出问题?也许是输出中的日期列?应用相同的格式字符串,例如:
SELECT TO_CHAR(hol_date, 'DD-MON-YY') FROM ...
这样尝试;
to_date('11-08-2013', 'DD-MON-YY')
- TO_DATE格式掩码
D
-月日
MON
-三个字符的月份,即"Jan"、"Feb"、"Apr
mm
0-年份的最后两位数字