十五年测试老手,长期负责WEB\APP 项目测试,目前主要负责团队管理工作。
【转】Oracle时间运算
上一篇 /
下一篇 2011-07-09 15:04:27
/ 个人分类:Oracle
目录
4?
{F4r:keu[0=========================================51Testing软件测试网0El:?OO:{.j
1.Oracle的日期函数
8ZJ}P9u02.日期加减51Testing软件测试网,Da-al7|\6P
3.月份加减
y'K []*?04.年份加减
yXG(o]2r05.求每月的最后一天51Testing软件测试网 ds/y5Jr2O4I
6.求每月的第一天51Testing软件测试网$S d%e%W`W
7.求下一个星期几
0y,[Nev.A&Zle3c6B051Testing软件测试网*@NpR]a
{ZG
入门知识:
~.Fj@(JZ,s7\|9Bn8p0
zMN2K6MB0①Oracle中的日期时间存储:
/T/W8tHx
i_0oracle数据库中存放时间格式的数据,是以oracle特定的格式存贮的,占7个字节,与查询时显示的时间格式无关。不存贮秒以下的时间单位。
q*M9A1B
dlZ,?&dm0②Oracle中的日期时间显示:51Testing软件测试网 j#?TD0Ql/~4`
通常,客户端与数据库建立起连接后,oracle就会给一个缺省的时间格式数据的显示形式,与所使用的字符集有关。一般显示年月日,而不显示时分秒。51Testing软件测试网8]8H.y^)j5SY
③Oracle中的日期时间插入:
5Z*J0SC'i2R"^^c0向表中插入数据时,如果不使用转换函数,则时间字段的格式必须遵从会话环境的时间格式,否则不能插入。
-O#U M?)r7X,`o/l/p0④Oracle中的日期时间格式修改:
!R(u&s6n)G9R
F0a.SQL> alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss';
S
ckn;xb0b.册表\hkey_local_machine\software\oracle\home0主键中增加一个字串(8i版本),字串名为nls_date_format,字串的值为你希望定义的时间格式51Testing软件测试网 l!^4Z2zhZ)a3?
前者只对当前会话有效,也即是一旦你关闭了SQL*PLUS窗口或重新打开一个SQL*PLUS窗口,日期时间格式依然采用本地字符集对应的日期时间格式。后者对所有客户端应用有效。当两者同时应用时,以alter session的修改为准。51Testing软件测试网bE'B.M.U ~1A
mw%oj h"Rp0
1M`-u`Ki6[0一、Oracle的日期函数:
[N$a&bJ@r6E
{;Xs051Testing软件测试网;Vh#j
f,C(o-@z
Oracle从8i开始就提供了大量的日期函数,这些日期函数包括对日期进行加减、转换、截取等功能。下面是Oracle提供的日期函数一览表 Function51Testing软件测试网-Y,siu8A
fic | Use b5E0O{RYn3_0 |
ADD_MONTHS |2}
gS;@A0 | Adds months to a date _3K"S
Rb\l0 |
LAST_DAY51Testing软件测试网R2x9I.QE1e&D | Computes the last day of the month51Testing软件测试网e-c$NkP-^;V4n$X |
MONTHS_BETWEEN |