首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将日期值转换为oracle日期值?

如何将日期值转换为oracle日期值?
EN

Stack Overflow用户
提问于 2013-08-14 07:55:18
回答 3查看 2.2K关注 0票数 2

我有一个要求,当我需要转换一个日期值(14-08-2013)到(14-8月13日)。我使用了以下查询,但它不起作用:

代码语言:javascript
复制
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    
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-08-14 08:28:55

to_date格式字符串中的时间部分是不必要的。将查询更改如下:

代码语言:javascript
复制
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   

并以2位数的形式使用mm代替mmm来表示月份

票数 2
EN

Stack Overflow用户

发布于 2013-08-14 08:32:37

Oracle的TO_DATE函数期望格式字符串与输入匹配。

代码语言:javascript
复制
to_date('11-08-2013', 'dd-mm-yyyy')

(注意事项mm用于2位月数,而不是mmm -三个字符月使用mon)将将字符串转换为日期,您的查询应该处理该日期。hh24:mi:ss部分没有必要,因为您的字符串中没有时间组件。不过,我的机器上的Oracle11g仍然能处理它。

但你的问题是

我需要将日期值(14-08-2013)转换为(14-8月13日)。

...which看起来可能是输出问题吗?可能是输出中的日期列吗?应用相同的格式字符串,例如:

代码语言:javascript
复制
SELECT TO_CHAR(hol_date, 'DD-MON-YY') FROM ...
票数 2
EN

Stack Overflow用户

发布于 2013-08-14 08:04:53

试着像这样;

代码语言:javascript
复制
to_date('11-08-2013', 'DD-MON-YY')
  • 日期格式掩码

D -月中的一天

三个字符的MON -月份,即“一月”、“二月”、“四月”

YY --一年中最后两位数。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18226092

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档