今天使用
to_date
获取年份,出现问题:
case:
select
to_char(to_date(
'
2012-12-04
'
,
'yyyy'
),
'yyyy'
)
from
dual;
result
:
错误产生原因
:date
类型不能包含秒以后的精度。
修改后语句如下:
select
to_char(to_date(
'2012-12-04'
,
'yyyy'
),
'yyyy-MM-dd'
)
from
dual;
结果:
可以正确执行
针对以上问题,在网上找到了不少资料,并整理了一下:
--
查询日期语言种类
select
*
from
V$NLS_PARAMETERS;
select
*
from
nls_session_parameters
--TO_DATE(null)
的用法(插入
null
字段
??
)
select
1
,
TO_DATE(
null
)
from
dual;
--
实际时间
2012-12-04
18:22
测试结果如下:
--24
小时显示方式
---
需用
HH24:mi:ss
这个形式
select
to_char(
sysdate
,
'yyyy-MM-dd
HH24:mi:ss'
)
from
dual;
--mi
是分钟
2012-12-04 18:22:06
select
to_char(
sysdate
,
'yyyy-MM-dd
HH24:mm:ss'
)
from
dual;
--mm
会显示月份
2012-12-04
18:12:15
--12
小时制显示方式
select
to_char(
sysdate
,
'yyyy-MM-dd
HH:mi:ss'
)
from
dual;
--mi
是分钟
2012-12-04 06:22:58
select
to_char(
sysdate
,
'yyyy-MM-dd
HH:mm:ss'
)
from
dual;
--mm
会显示月份
2012-12-04
06:12:21
--2012-12-04
select
to_char(to_date(
'2012-12-04'
,
'yyyy-MM-dd'
),
'day'
)
from
dual;
--2012-12-04
tuesday
(以
American
语言显示)
select
to_char(to_date(
'2012-12-04'
,
'yyyy-mm-dd'
),
'day'
,
'NLS_DATE_LANGUAGE =
American'
)
from
dual;
--2012-12-04
select
to_char(to_date(
'2012-12-04'
,
'yyyy-MM-dd'
),
'MONTH'
)
from
dual;
--2012-12-04
DECEMBER
(以
American
语言显示)
select
to_char(to_date(
'2012-12-04'
,
'yyyy-mm-dd'
),
'MONTH'
,
'NLS_DATE_LANGUAGE =
American'
)
from
dual;
下面是在网上找的
to_date
的格式:
TO_DATE
格式
(
以时间
:2007-11-02
13:45:25
为例
)
Year:
yy two digits
显示值
:07
yyy three digits
显示值
:007
yyyy four digits
显示值
:2007
Month:
number
显示值
:11
abbreviated
字符集表示
显示值
:11
月
,
若是英文版
,
显示
nov
month spelled out
字符集表示
显示值
:11
月
,
若是英文版
,
显示
november
number
当月第几天
显示值
:02
number
当年第几天
显示值
:02
abbreviated
当周第几天简写
显示值
:
星期五
,
若是英文版
,
显示
fri
spelled out
当周第几天全写
显示值
:
星期五
,
若是英文版
,
显示
friday
ddspth spelled out, ordinal twelfth
Hour:
two digits 12
小时进制
显示值
:01
hh24 two digits 24
小时进制
显示值
:13
Minute:
two digits 60
进制
显示值
:45
Second:
two digits 60
进制
显示值
:25
digit
显示值
:4
digit
当年第几周
显示值
:44
digit
当月第几周
显示值
:1
24
小时格式下时间范围为:
0:00:00 - 23:59:59....
12
小时格式下时间范围为:
1:00:00 - 12:59:59 ....
新浪简介
|
About Sina
|
广告服务
|
联系我们
|
招聘信息
|
网站律师
|
SINA English
|
产品答疑