Omi*_*miD 2 oracle date date-formatting
我在表中有一个日期字段,其中包含dd-MMM-yy格式的日期.
我想创建一个函数,让这个日期检查它不为null,然后将其更改为yyyy/mm/dd格式
但问题是oracle不接受dd-MMM-yy格式日期作为输入参数,它说:请使用yyyy-MM-dd日期格式!!!
我怎样才能首先将dd-MMM-yy格式转换为yyyy-MM-dd,以便oracle接受它作为输入然后将其更改为yyyy/mm/dd
Lal*_*r B 10
:请使用yyyy-MM-dd日期格式!!!
这与Oracle错误无关.
我在表中有一个日期字段,其中包含dd-MMM-yy格式的日期.
不,你很困惑.Oracle不会以您看到的格式存储日期.它在内部存储7个字节,每个字节存储日期时间值的不同组件.
Byte Description
---- -------------------------------------------------
1 Century value but before storing it add 100 to it
2 Year and 100 is added to it before storing
3 Month
4 Day of the month
5 Hours but add 1 before storing it
6 Minutes but add 1 before storing it
7 Seconds but add 1 before storing it
Run Code Online (Sandbox Code Playgroud)
如果要显示,请使用TO_CHAR和正确的格式模型.
插入时,使用TO_DATE与适当的格式模型.
默认情况下,您看到的格式是您的区域设置特定NLS设置.
SQL> select parameter, value from v$nls_parameters where parameter='NLS_DATE_FORMAT';
PARAMETER VALUE
--------------- ----------------------------------------------------------------
NLS_DATE_FORMAT DD-MON-RR
SQL> select sysdate from dual;
SYSDATE
---------
03-FEB-15
SQL> select to_char(sysdate, 'mm/dd/yyyy hh24:mi:ss') from dual;
TO_CHAR(SYSDATE,'MM
-------------------
02/03/2015 17:59:42
SQL>
Run Code Online (Sandbox Code Playgroud)
更新关于MMM格式.
如果你的意思是月份名称最多三个字符,那么使用MMM,然后使用MON.
| 归档时间: |
|
| 查看次数: |
11036 次 |
| 最近记录: |