oracle中的日期:周月季年,首天未天。
SQL>
SQL> SELECT to_char(SYSDATE,'yyyy-mm-dd hh24:mi:ss') 现在时间,to_char(sysdate,'hh24') 当前小时数,to_char(sysdate,'hh24')-1 前一小时数
2 FROM dual; 现在时间 当前小时数 前一小时数
------------------- ---------- ----------
2016-11-23 10:04:25 10 9 SQL>
SQL> SELECT to_char(sysdate,'dd') AS 当天天数,to_char(sysdate,'iw') AS 本周周数,to_char(sysdate,'mm') AS 本月月份
2 ,to_char(sysdate,'q') AS 本季度数,to_char(sysdate,'yyyy') AS 本年度数
3 FROM dual; 当天天数 本周周数 本月月份 本季度数 本年度数
-------- -------- -------- -------- --------
23 47 11 4 2016 SQL>
SQL> SELECT trunc(sysdate) AS 当天日期,trunc(sysdate-1) AS 昨天日期
2 ,TRUNC(sysdate,'iw') AS 本周第一天星期一,TRUNC(sysdate,'d') AS 本周第一天星期日
3 ,trunc(SYSDATE, 'MM') AS 本月第一天,TRUNC(sysdate,'q') AS 本季度第一天,trunc(sysdate,'YYYY') AS 本年第一天
4 FROM dual
5 ; 当天日期 昨天日期 本周第一天星期一 本周第一天星期日 本月第一天 本季度第一天 本年第一天
----------- ----------- ---------------- ---------------- ----------- ------------ -----------
2016-11-23 2016-11-22 2016-11-21 2016-11-20 2016-11-1 2016-10-1 2016-1-1 SQL>
SQL> SELECT TRUNC(sysdate,'iw')+7 AS 本周最后一天星期一,TRUNC(sysdate,'d')+7 AS 本周第一天星期日
2 ,trunc(last_day(SYSDATE)) AS 本月最后一天,add_months(trunc(sysdate,'Q'),3)-1 AS 本季度第一天,add_months(trunc(sysdate,'yyyy'),12)-1 AS 本年最后一天
3 FROM dual; 本周最后一天星期一 本周第一天星期日 本月最后一天 本季度第一天 本年最后一天
------------------ ---------------- ------------ ------------ ------------
2016-11-28 2016-11-27 2016-11-30 2016-12-31 2016-12-31 SQL>
SQL> select trunc(sysdate, 'month') 本月第一天,trunc(last_day(sysdate)) 本月最后一天,
2 trunc(add_months(sysdate, -1), 'month') 上月第一天,trunc(last_day(add_months(sysdate, -1))) 上月最后一天,
3 trunc(last_day(add_months(SYSDATE, 0))+1) 下个月第一天,trunc(last_day(add_months(SYSDATE, 1))) 下个月最后一天,
4 trunc(add_months(sysdate, -12), 'month') 去年本月第一天,trunc(last_day(add_months(sysdate, -12))) 去年本月最后一天
5 from dual; 本月第一天 本月最后一天 上月第一天 上月最后一天 下个月第一天 下个月最后一天 去年本月第一天 去年本月最后一天
----------- ------------ ----------- ------------ ------------ -------------- -------------- ----------------
2016-11-1 2016-11-30 2016-10-1 2016-10-31 2016-12-1 2016-12-31 2015-11-1 2015-11-30 SQL>
SQL>
SQL> SELECT trunc(last_day(add_months(sysdate, -1)))-trunc(add_months(sysdate, -1), 'month')+1 上月天数
2 ,trunc(last_day(add_months(sysdate, 0)))-trunc(add_months(sysdate, 0), 'month')+1 当月天数
3 ,ADD_MONTHS(TRUNC(SYSDATE, 'YYYY'), 12)-TRUNC(SYSDATE, 'YYYY') 当年天数
4 FROM dual;
上月天数 当月天数 当年天数
---------- ---------- ----------
31 30 366
select sysdate from dual;
/*
sysdate
----------
20-SEP-07 日期格式 說明
------------------------------------------------------------------------
YYYY/MM/DD -- 年/月/日
YYYY -- 年(4位)
YYY -- 年(3位)
YY -- 年(2位)
MM -- 月份
DD -- 日期
D -- 星期
-- 星期日 = 1 星期一 = 2 星期二 = 3
-- 星期三 = 4 星期四 = 5 星期五 = 6 星期六 = 7 DDD -- 一年之第幾天
WW -- 一年之第幾週
W -- 一月之第幾週
YYYY/MM/DD HH24:MI:SS -- 年/月/日 時(24小時制):分:秒
YYYY/MM/DD HH:MI:SS -- 年/月/日 時(非24小時制):分:秒
J -- Julian day,Bc 4712/01/01 為1
RR/MM/DD -- 公元2000問題-- 00-49 = 下世紀;50-99 = 本世紀
*/ select to_char(sysdate,'YYYY/MM/DD') FROM DUAL; -- 2007/09/20
select to_char(sysdate,'YYYY') FROM DUAL; --
select to_char(sysdate,'YYY') FROM DUAL; --
select to_char(sysdate,'YY') FROM DUAL; --
select to_char(sysdate,'MM') FROM DUAL; --
select to_char(sysdate,'DD') FROM DUAL; --
select to_char(sysdate,'D') FROM DUAL; --
select to_char(sysdate,'DDD') FROM DUAL; --
select to_char(sysdate,'WW') FROM DUAL; --
select to_char(sysdate,'W') FROM DUAL; --
select to_char(sysdate,'YYYY/MM/DD HH24:MI:SS') FROM DUAL; -- 2007/09/20 15:24:13
select to_char(sysdate,'YYYY/MM/DD HH:MI:SS') FROM DUAL; -- 2007/09/20 03:25:23
select to_char(sysdate,'J') FROM DUAL; --
select to_char(sysdate,'RR/MM/DD') FROM DUAL; -- 07/09/20
--http://blog.sina.com.cn/s/blog_73e1106501013fzw.html
oracle中的日期:周月季年,首天未天。的更多相关文章
- Oracle中有关日期的语法
Oracle中有关日期的语法 Oracle提供了丰富的日期函数.利用日期函数可以灵活的对日期进行运算. to_date()函数——将字符串转换为日期型 to_date()函数用于将字符串转换为日期.被 ...
- Oracle中的日期处理方法
日期处理方法 当前日期和时间 Select sysdate from dual; 本月最后 ...
- Oracle中的日期数据类型
TimeStamp日期类型 TimeStamp数据类型用于存储日期的年.月.日,以及时间的小时.分和秒,其中秒值精确到小数点后6位,该数据类型 同时包含时区信息.systimestamp函数的功能是返 ...
- Oracle中的日期和字符串互相转换
转载出处:http://blog.sina.com.cn/s/blog_44a005380100k6rv.html TO_DATE格式(以时间:2007-11-02 13:45:25为例) ...
- oracle中的日期函数的使用
TO_DATE格式(以时间:2007-11-02 13:45:25为例) Year: yy two digits 两位年 显示值:07 ...
- Oracle中与日期时间有关的运算函数
1 ADD_MONTHS 格式:ADD_MONTHS(D,N) 说明:返回日期时间D加N月后对应的日期时间.N为正时则表示D之后:N为负时则表示为D之前:N为小数则会自动先删除小 ...
- 转:Oracle中的日期和字符串互相转换
TO_DATE格式(以时间:2007-11-02 13:45:25为例) Year: yy two digits 两位年 显 ...
- Oracle中的日期
--1.日期字符转换函数的用法 /****************************TO_CHAR********************************/ -------------- ...
- Oracle中的日期加减
加法 select sysdate,add_months(sysdate,12) from dual; --加1年 select sysdate,add_months(sysdate ...
随机推荐
- 【转】slice,substr和substring的区别
首先,他们都接收两个参数,slice和substring接收的是起始位置和结束位置(不包括结束位置),而substr接收的则是起始位置和所要返回的字符串长度.直接看下面例子: var test = ' ...
- Shell 编写准则
Shell 中备注符号: # 或者 " 作为Shell中的备注符号. 需要注意的是,首行的#!/bin/bash 不是注释 Shell 格式 首行输入 #!/bin/bash 中间输入运行 ...
- 更新记录后关闭子窗口并刷新父窗口的Javascript
有时我们需要在新打开的窗口里面编辑信息,等编辑完了,需要将当前窗口关闭并且刷新父窗口,以使修改生效,本文就是介绍用 javascript 来实现"更新记录后关闭子窗口并刷新父窗口" ...
- sql developer 要求输入jdk地址
困扰了好久 终于找到解决办法了. 将sql developer改为 兼容模式和管理员方式运行,选择java.exe的路径 终于可以在64位系统下顺利使用了.
- Python 基礎 - 文件操作_v2
嗯,那如何要把游標的位置給打印來? #!/usr/bin/env python3 # -*- coding:utf-8 -*- f = open('test', 'r') print(f.tell() ...
- Default Title
測試的標誌 代表意義 1. 關於某個檔名的『檔案類型』判斷,如 test -e filename 表示存在否 -e 該『檔名』是否存在?(常用) -f 該『檔名』是否存在且為檔案(file)?(常用) ...
- kernel/ptrace.c
/* ptrace.c *//* By Ross Biro 1/23/92 *//* edited by Linus Torvalds */ #include <linux/head.h> ...
- linux vsftp配置
1.rpm -q ftp 查看是否安装ftp服务器 2.yum install vsftp 安装ftp服务器 3.修改配置文件/etc/vsftpd 下面的 ftpusers和user_list,这两 ...
- Tomcat报错:Failed to start component [StandardEngine[Catalina].StandardHost[localhost]]
Failed to start component [StandardEngine[Catalina].StandardHost[localhost]] 解决办法: 1,检测你的web.xml.去掉所 ...
- hadoop 集群跑的时候用到hbasejar 文件的引用问题
1. 创建软连接 ln -s /home/hadoop/bigdater/hbase-0.98.6-cdh5.3.6/conf/hbase-site.xml ./hbase-site.xml(记得这里 ...