详细讲解Oracle数据库的“周数计算”

2008-03-18

eNet&Ciweek

2)iw的算法为星期一至星期日算一周,且每年的第一个星期一为第一周,

例如20050101为星期六,所以用iw的算法是前年的53周,而20050103之后才是第一周的开始。

公式 每周第一天 :next_day(date) + 周 * 7 - 7

每周最后一天:next_day(date) + 周 * 7 - 1

如果以iw格式为主,第1、17周的起迄如下

127.0.0.1:asdb:WF>select next_day(to_date('20050101','yyyymmdd'),'MONDAY')+ 1 * 7 - 7 as first_day,next_day(to_date('20050101','yyyymmdd'),'MONDAY')+ 1 * 7 - 1 as last_day from dual;

FIRST_DAY LAST_DAY

03-JAN-05 09-JAN-05

Elapsed: 00:00:00.00

127.0.0.1:asdb:WF>

127.0.0.1:asdb:WF>select next_day(to_date('20050101','yyyymmdd'),'MONDAY')+ 17 * 7 - 7 as first_day,next_day(to_date('20050101','yyyymmdd'),'MONDAY')+ 17 * 7 - 1 as last_day from dual;

FIRST_DAY LAST_DAY

25-APR-05 01-MAY-05

Elapsed: 00:00:00.00

127.0.0.1:asdb:WF>

验证如下

127.0.0.1:asdb:WF>select to_char(to_date('20050424','yyyymmdd'),'iw') as weekn,to_char(to_date('20050425','yyyymmdd'),'iw') as week1,to_char(to_date('20050501','yyyymmdd'),'iw') as week2,to_char(to_date('20050502','yyyymmdd'),'iw') as weekn2 from dual;

WEEK WEEK WEEK WEEK

---- ---- ---- ----

16 17 17 18

Elapsed: 00:00:00.00

3)其它:

A、查今天是 "本月" 的第几周

SELECT TO_CHAR(SYSDATE,'WW') - TO_CHAR(TRUNC(SYSDATE,'MM'),'WW') + 1 AS "weekOfMon" from dual;

SELECT TO_CHAR(SYSDATE,'W') AS "weekOfMon" from dual;

B、查今天是 "今年" 的第几周

select to_char(sysdate,'ww') from dual;

select to_char(sysdate,'iw') from dual;

附注:

上文所提之iw及ww格式在doc内解释如下

IW = Week of year (1-52 or 1-53) based on the ISO standard

WW = Week of year (1-53) where week 1 starts on the first day of the year and continues to the seventh day of the year.

包括各种日期计算

您对本文或本站有任何意见,请在下方提交,谢谢!

oracle 怎么计算年数,详细讲解Oracle数据库的“周数计算”相关推荐

  1. oracle连续周数,详细讲解Oracle数据库的“周数计算”

    详细讲解Oracle数据库的"周数计算"以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! --日期计算 ...

  2. oracle分区属于什么知识,详细讲解Oracle表分区的相关概念及其优点

    Oracle 8i以后推出了分区选项.分区将表分离在若于不同的表空间上,用分而治之的方法来支撑元限膨胀的大表,组大表在物理一级的可管理性.将大表分割成较小的分区可以改善表的维护.备份.恢复.事务及查询 ...

  3. oracle怎么将一列挪到另一列,详细讲解Oracle数据库的数据迁移方法

    <详细讲解Oracle数据库的数据迁移方法>由会员分享,可在线阅读,更多相关<详细讲解Oracle数据库的数据迁移方法(4页珍藏版)>请在人人文库网上搜索. 1.详细讲解 Or ...

  4. java 两日期的周数_利用 Java 中 Calendar 计算两个日期之间的天数和周数

    利用 Java 中 Calendar 计算两个日期之间的天数和周数 前言 究竟什么是一个 Calendar 呢? 中文的翻译就是日历, 那我们立刻可以想到我们生活中有阳 (公) 历阴 (农) 历之分它 ...

  5. Calendar计算两个日期之间的天数和周数

    每天一篇开发日记,轻松快乐每一天!今天介绍的是利用java,Calendar类计算出两个日期之间的天数和周数的算法! 计算出日期之间的天数: public Object countTwoDate(Ob ...

  6. java calendar日期计算_利用Java中Calendar计算两个日期之间的天数和周数

    前言 究竟什么是一个 Calendar 呢?中文的翻译就是日历,那我们立刻可以想到我们生活中有阳(公)历.阴(农)历之分.它们的区别在哪呢? 比如有: 月份的定义 - 阳`(公)历 一年12 个月,每 ...

  7. java日期相差周_利用Java中Calendar计算两个日期之间的天数和周数

    前言 究竟什么是一个 Calendar 呢?中文的翻译就是日历,那我们立刻可以想到我们生活中有阳(公)历.阴(农)历之分.它们的区别在哪呢? 比如有: 月份的定义 - 阳`(公)历 一年12 个月,每 ...

  8. php 获取月份的周数,PHP获取当前月份的周数只能使用php

    这里是我的周数组.当月和年2017年,我想下面的代码,PHP获取当前月份的周数只能使用php function getWeekDates($date, $start_date, $end_date) ...

  9. php中如何获得当前周数,PHP中根据输入的周数获取到该周的日期范围

    /** * 根据输入的周数获取到该周的日期范围[推荐使用] * 从周一到周日算是一周 * * @author _DT_Baby * @param int $year 年份 * @param int $ ...

最新文章

  1. AutoML 在推荐系统中的应用
  2. 智能车竞赛技术报告 | 智能车视觉 - 青岛科技大学 - 飞猪
  3. linux time 统计命令执行的时间
  4. 单例模式下的懒汉和饿汉模式
  5. django-vue-admin脚手架快速开发CRUD教程
  6. 前端和后端的英文_计算机专业的本科生在前端、后端、测试和运维之间该如何选择...
  7. 三连击(升级版)(洛谷-P1618)
  8. springmvc接收日期字段处理方式
  9. leetcode| 94. 二叉树的中序遍历
  10. node服务器给客户端发消息,上的node.js发送消息客户端 - 服务器 - 客户端上socket.io(Sen...
  11. TIOBE 8 月编程语言排行榜:Python 奋力追赶 C,Swift 下跌
  12. IDEA Properties 文件乱码
  13. Delphi 与 DirectX 之 DelphiX(93): TDIB.DrawDarken();
  14. 嵌入式软件工程师笔试面试指南目录
  15. ireport mysql_iReport连接Mysql创建图表报表
  16. Thinkpad T420 Fn热键在Windows10中的解决方案
  17. 【将百分制转换成五分制】
  18. ZiPhone一键破解1.1.4nbsp;iPhone完整教程
  19. SpringBoot-集成Shiro
  20. Logstash 同步时报illegal_argument_exception:startOffset must be non-....endOffset must be = startOffset

热门文章

  1. 【C++】屋顶积水问题
  2. 1.2.位、字节、半字、字、内存位宽
  3. Vue在添加了@CrossOrigin注解之后还是报跨域的错误的原因
  4. C语言值传递与地址传递
  5. 计算机网络波动大,网络不稳定是什么原因?
  6. 前端MVC设计模式VSM,V,VM设计模式
  7. kali linux 安装java_kali linux 安装 JVA环境
  8. linux 利用cat写文件名,在LINUX中如何用cat创建一个文件
  9. python神经网络代码
  10. ## 5G远程培训系统-概述