C# 如何将日期值转换为oracle日期值?
我需要将日期值(2013年8月14日)转换为(2013年8月14日)。我使用了以下查询,但它不起作用:C# 如何将日期值转换为oracle日期值?,c#,sql,oracle,C#,Sql,Oracle,我需要将日期值(2013年8月14日)转换为(2013年8月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('11-08-2013', '
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('11-08-2013', 'DD-MON-YY')
D
-月日
MON
-三个字符的月份,即“一月”、“二月”、“四月”
YY
-一年的最后两位。不需要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
使用
mm
而不是mmm
表示两位数的月份Oracle的截止日期
函数期望格式字符串与输入匹配
to_date('11-08-2013', 'dd-mm-yyyy')
(注意:mm
表示两位数的月数,而不是mmm
-三个字符的月份使用mon
)将字符串转换为日期,您的查询应处理该日期。hh24:mi:ss
部分不是必需的,因为字符串中没有时间组件。不过,我的机器上的Oracle 11g仍能处理该部分
但你的问题是
我需要将日期值(2013年8月14日)转换为(2013年8月14日)
…看起来可能是输出问题?可能是输出中的日期列?应用相同的格式字符串,例如:
SELECT TO_CHAR(hol_date, 'DD-MON-YY') FROM ...
为什么人们要重新编辑和留下/重新添加应该修复的内容?格式化通常最好在客户端完成,而不是服务器端,因为当你需要国际化所有内容的时候,如果你已经完成了逐件邮件,那将是一场噩梦。从你的问题中不清楚你为什么要将日期转换为
DD-MON-YY
当您只是将它们与表中的日期列(可能是)进行比较时设置格式。Mike,yyy
不应该是YY
,因为OP需要年份的最后两位数字?这很有效..非常感谢您