PL/SQL学习笔记之日期时间
一:PL/SQL时间相关类型
PL/SQL提供两个和日期时间相关的数据类型:
日期时间(Datetime)数据类型
时间间隔类型
二:日期时间类型
datetime数据类型有:
DATE
TIMESTAMP
TIMESTAMP WITH TIME ZONE
TIMESTAMP WITH LOCAL TIME ZONE
三:时间间隔类型
INTERVAL YEAR TO MONTH
INTERVAL DAY TO SECOND
四:日期时间类型 和 时间间隔类型 的可能字段
| 字段名称 | 有效日期时间值 | 有效的间隔值 |
|---|---|---|
| YEAR | -4712 to 9999 (除外0年) | 任何非0整数 |
| MONTH | 01 - 12 | 0 - 11 |
| DAY | 01 - 31 (受MONTH和YEAR的数值,按日历的区域设置的规则) | 任何非0整数 |
| HOUR | 00 - 23 | 0 - 23 |
| MINUTE | 00 - 59 | 0 - 59 |
| SECOND | 00 to 59.9(n), 其中,9(n)是时间小数秒精度 在9(n)的部分是不适用DATE。 |
0 to 59.9(n), 其中,9(n)是区间小数秒精度 |
| TIMEZONE_HOUR |
-12 - 14 (适应范围夏令时更改) DATE 或 TIMESTAMP不适用. |
不适用 |
| TIMEZONE_MINUTE |
00 - 59 DATE 或 TIMESTAMP不适用. |
不适用 |
| TIMEZONE_REGION | DATE 或 TIMESTAMP不适用. | 不适用 |
| TIMEZONE_ABBR | DATE 或 TIMESTAMP不适用. | 不适用 |
五:日期时间函数(x 是DATE值)
| S.N | 函数名称 & 描述 |
|---|---|
| 1 | ADD_MONTHS(x, y); 增加y个月到x |
| 2 |
LAST_DAY(x); 返回该月的最后一天 |
| 3 |
MONTHS_BETWEEN(x, y); 返回x和y之间的月数 |
| 4 |
NEXT_DAY(x, day); 返回x后第二天的日期时间 |
| 5 |
NEW_TIME; 返回从由用户指定的一个时区的时间/天的值 |
| 6 |
ROUND(x [, unit]); x舍入; |
| 7 |
SYSDATE(); 返回当前日期时间。 |
| 8 |
TRUNC(x [, unit]); 截断x |
六:时间戳函数(x是TIMESTAMP值)
| S.N | 函数名称 & 描述 |
|---|---|
| 1 | CURRENT_TIMESTAMP(); 返回包含当前会话时间以及会话时区的时区中的时间戳( TIMESTAMP WITH TIME ZONE) |
| 2 |
EXTRACT({ YEAR | MONTH | DAY | HOUR | MINUTE | SECOND } | { TIMEZONE_HOUR | TIMEZONE_MINUTE } | { TIMEZONE_REGION | } TIMEZONE_ABBR ) FROM x) 从x提取并返回年,月,日,时,分,秒,或时间; |
| 3 |
FROM_TZ(x, time_zone); 通过TIME_ZONE指定WITH TIMEZONE一个TIMESTAMP时间戳x和时区转换 |
| 4 |
LOCALTIMESTAMP(); 返回包含在会话时区的本地时间时间戳 |
| 5 |
SYSTIMESTAMP(); 返回含有当前数据库的时间以及数据库时区的时区中的时间戳(TIMESTAMP WITH TIME ZONE) |
| 6 |
SYS_EXTRACT_UTC(x); WITH TIMEZONE X的TIMESTAMP转换为包含日期和时间UTC时间戳 |
| 7 |
TO_TIMESTAMP(x, [format]); 将字符串x转换为一个TIMESTAMP |
| 8 |
TO_TIMESTAMP_TZ(x, [format]); 字符串x转换到WITH TIMEZONE时间戳 |
七:时间间隔函数
| S.N | 函数名称 & 描述 |
|---|---|
| 1 | NUMTODSINTERVAL(x, interval_unit); 整数x转换为一个间隔(DAY TO SECOND) |
| 2 |
NUMTOYMINTERVAL(x, interval_unit); x到时间间隔(YEAR TO MONTH)数的转换 |
| 3 |
TO_DSINTERVAL(x); 将字符串x时间间隔(DAY TO SECOND)到秒转换 |
| 4 |
TO_YMINTERVAL(x); 将字符串x时间间隔(YEAR TO MONTH)转换为整数 |
PL/SQL学习笔记之日期时间的更多相关文章
- ORALCE PL/SQL学习笔记
ORALCE PL/SQL学习笔记 详情见自己电脑的备份数据资料
- Oracle之PL/SQL学习笔记
自己在学习Oracle是做的笔记及实验代码记录,内容挺全的,也挺详细,发篇博文分享给需要的朋友,共有1w多字的学习笔记吧.是以前做的,一直在压箱底,今天拿出来整理了一下,给大家分享,有不足之处还望大家 ...
- PL\SQL学习笔记
注释 单行--多行 一.declare一般用于做变量的申明.begin 程序体开始执行 end; 程序体结束exception .. dbms_output.put_line('绝对值'||v_ab ...
- PL/SQL学习笔记之数据类型中的标量、LOB
一:标量 标量 即 基本数据类型,主要有4种:数值.字符.布尔类型.日期时间. 1:数值类型 数据类型 描述 PLS_INTEGER 通过2,147,483,647到-2147483648范围内有符号 ...
- PL/SQL学习笔记_03_存储函数与存储过程
ORACLE 提供可以把 PL/SQL 程序存储在数据库中,并可以在任何地方来运行它.这样就叫存储过程或函数. 存储函数:有返回值,创建完成后,通过select function() from dua ...
- [Oracle] PL/SQL学习笔记
-- 1. 使用一个变量 declare -- Local variables here v_name ); begin -- Test statements here select t.user_n ...
- PL/SQL学习笔记_01_基础
PL/SQL语句可以在Oracle客户端的 SQL窗口或者 command 窗口中运行 在SQL窗口中运行步骤同 SQL语句 在command 窗口中运行的步骤如下: 1)File—new com ...
- PL/SQL学习笔记程序单元
一:程序单元组成 一个PL/SQL程序单元主要包括三部分: 声明与定义部分:声明变量.常量.类型等:定义过程.函数等: 执行部分:执行PL/SQL语句:调用过程.参数:处理游标等: 异常处理部分:处理 ...
- PL/SQL学习笔记之包
一:包 包是由一组相关的函数,过程,变量,游标等PL/SQL程序设计元素的组合而成的一个PL/SQL程序单元,相当于Java中的类. 包的主要作用是封装:把相同或相似的东西归类,方便维护和管理,提高开 ...
随机推荐
- Hive的配置| 架构原理
Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能. 本质是:将HQL转化成MapReduce程序 1)Hive处理的数据存储在HDFS 2)Hi ...
- PAT (Basic Level) Practise - 害死人不偿命的(3n+1)猜想
题目链接:https://www.patest.cn/contests/pat-b-practise/1001 卡拉兹(Callatz)猜想: 对任何一个自然数n,如果它是偶数,那么把它砍掉一半:如果 ...
- javaNIO的总结
放大1.5倍查看 使用NIO对文件进行COPY操作 public class TestNIOCopyFile { public static void main(String[] args) thro ...
- scrapy 手动编写模板
import scrapy class Tzspider(scrapy.Spider): # spider的名字,唯一 name = 'tz' # 初始url列表 start_urls = ['htt ...
- css3流动布局
-webkit-box-ordinal-group: 2;1...布局优先显示 display: -webkit-box;盒子 -webkit-box-orient:horizontal;显示方式 - ...
- html5手势操作与多指操作封装与Canvas图片裁切实战
当前情况,移动端的开发占比越来越高,单指的拖拽触碰等操作是常规需要.特殊的多指操作与手势操作还需另做处理,而且还涉及到兼容性问题. // 屏幕上存在两根或两根以上的手指 时触发 仅IOS存在手势事件, ...
- [linux]服务器apache配置vhost
官网示例: http://httpd.apache.org/docs/current/vhosts/examples.html
- Mac如何彻底卸载Mysql
因为工作变动,到新公司需要安装开发环境,因为电脑是我的“前任”在使用,一般的开发环境都有,就直接上手代码,连接公司数据库.直到某天打算自己写点东西,连接本地的mysql,发现navicat怎么都连接不 ...
- 【DWM1000】 code 解密7一ANCHOR接收到BLINK
接着之前ANCHOR的代码分析,但接收到无线数据,应该执行如下代码 case TA_RX_WAIT_DATA : //already recive a message ...
- mysql case when then else end 的用法
case when then end 改语句的执行过程是:将case后面表达式的值与各when子句中的值进行比较,如果两者相等,则返回then后的表达式的值,然后跳出case语 句,否则返回else子 ...