oracle查看当前日期是第几个星期的方法

系统当前时间是多少周,就是是今年的第几个星期
 

代码如下:

select to_char(sysdate,'ww') ,to_char(sysdate,'iw') from dual;
select to_char(sysdate,'ddd') from dual;
select TRUNC(SYSDATE,'MM') from dual;1)

ww的算法为每年1月1日为第一周开始,date+6为每一周结尾
例如:20050101为第一周的第一天,而第一周的最后一天为20050101+6=20050107  
公式: 每周第一天 :date + 周 * 7 - 7  每周最后一天:date + 周 * 7 - 12)

iw的算法为星期一至星期日算一周,且每年的第一个星期一为第一周,
例如:20050101为星期六,所以用iw的算法是前年的53周,而20050103之后才是第一周的开始。  
公式: 每周第一天 :next_day(date) + 周 * 7 - 7每周最后一天:next_day(date) + 周 * 7 - 13)

其它:  
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;
统计哪年哪个星期的哪一天:


代码如下:

int year=2011;
        int week=1;
        Calendar calFirstDayOfTheYear = new GregorianCalendar(year,
                Calendar.JANUARY, 1);
            calFirstDayOfTheYear.add(Calendar.DATE, 7 * (week-1));

int dayOfWeek = calFirstDayOfTheYear.get(Calendar.DAY_OF_WEEK);

Calendar calFirstDayInWeek = (Calendar)calFirstDayOfTheYear.clone();
            calFirstDayInWeek.add(Calendar.DATE,
                calFirstDayOfTheYear.getActualMinimum(Calendar.DAY_OF_WEEK) - dayOfWeek);
            Date firstDayInWeek = calFirstDayInWeek.getTime();
            System.out.println(year + "年第" + week + "个礼拜的第一天是" + ReportDateUtil.getFromatDay().format(firstDayInWeek));

Calendar calLastDayInWeek = (Calendar)calFirstDayOfTheYear.clone();
            calLastDayInWeek.add(Calendar.DATE,
                calFirstDayOfTheYear.getActualMaximum(Calendar.DAY_OF_WEEK) - dayOfWeek);
            Date lastDayInWeek = calLastDayInWeek.getTime();
            System.out.println(year + "年第" + week + "个礼拜的最后一天是" + ReportDateUtil.getFromatDay().format(lastDayInWeek));

(0)

相关推荐

  • oracle查看当前日期是第几个星期的方法

    系统当前时间是多少周,就是是今年的第几个星期   复制代码 代码如下: select to_char(sysdate,'ww') ,to_char(sysdate,'iw') from dual;select to_char(sysdate,'ddd') from dual;select TRUNC(SYSDATE,'MM') from dual;1) ww的算法为每年1月1日为第一周开始,date+6为每一周结尾例如:20050101为第一周的第一天,而第一周的最后一天为20050101+6=

  • Oracle查看表结构命令详解

    获取表: select table_name from user_tables; //当前用户的表 select table_name from all_tables; //所有用户的表 select table_name from dba_tables; //包括系统表 select table_name from dba_tables where owner='用户名' user_tables: table_name,tablespace_name,last_analyzed等 dba_ta

  • Oracle查看表结构的几种方法示例代码

    1,DESCRIBE 命令 使用方法如下: SQL> describe nchar_tst(nchar_tst为表名) 显示的结果如下: 名称 是否为空? 类型 ----------------------------------------- -------- ---------------------------- NAME NCHAR(6) ADDR NVARCHAR2(16) SAL NUMBER(9,2) 2,DBMS_METADATA.GET_DDL包 使用方法如下: SQL> S

  • ORACLE查看当前账号的相关信息

    关于Oracle数据库的账号,我们在维护数据库的时候,偶尔可能需要获取一些特殊信息.例如,账号的创建时间.账号的状态.账号的锁定时间......正常情况下,我们可以通过DBA_USERS获取大部分相关信息.但是有一些特殊信息,还必须通过不常用底层基表sys.user$来获取. SQL> DESC DBA_USERS; Name Null? Type ----------------------------------------- -------- -----------------------

  • Oracle查看表空间使用率以及爆满解决方案详解

    目录 一.查看表空间使用率 1.查看数据库表空间文件: 2.查看所有表空间的总容量: 3.查看数据库表空间使用率 4.1.查看表空间总大小.使用率.剩余空间 4.2.查看表空间使用率(包含temp临时表空间) 5.查看具体表的占用空间大小 二.扩展大小或增加表空间文件 1.更改表空间的dbf数据文件分配空间大小 2.1 为表空间新增一个数据文件(表空间满32G不能扩展则增加表空间文件) 2.2 如果是temp临时表新增表空间会报错: 附:查看表空间是否具有自动扩展的能力 总结 一.查看表空间使用

  • Oracle删除数据报ORA 02292错误的巧妙解决方法

    废话不多说了,直接给大家贴上完美的解决方法,具体代码如下所示: --查询表TP_MENU有哪些约束 select * from user_constraints u where u.constraint_name like '%TB_ROLE%'; --失效约束 alter table TP_MENU disable constraint FK_TP_MENU_REFERENCE_TP_MENU cascade; alter table TB_ROLE_REF_MENU disable cons

  • JS简单获取当前年月日星期的方法示例

    本文实例讲述了JS简单获取当前年月日星期的方法.分享给大家供大家参考,具体如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <he

  • 详解查看JAVA API及JAVA源码的方法

    在java的日常学习中,我们有时候会需要看java的api说明,或者是查看java的源码,使我们更好的了解java,接下来我就来说说如何查看java的api以及java源码 对于java的api,一般是在下面的网址中进行查看 https://docs.oracle.com/javase/8/docs/api/ 而对于java的源码,我们现在来演示查看nextLine()的源码: 将鼠标放置在希望转跳到源码的函数上,等待系统浮现这个黄色的框 然后点击下面的Open Declaration,即可进入

  • Oracle监听器被优化大师挂掉后的完美解决方法

    Oracle监听器被优化大师挂掉后的解决方法: 在启动oracleorahome90tnslistener服务 时出错,信息: 在本地计算机无法启动oracleorahome90tnslistener服务, 错误3:系统找不到指定路径. 我在网上查资料后,发现一般这些文件的位置由注册表的 ORACLE_HOME 变量决定. 先看一看注册表中 HKEY_LOACL_MACHINE/ SOFTWARE/ORACLE 下的 ORACLE_HOME值 如果没有这个值 ,那你一定要添加进去. ORACLE

  • PHP使用GETDATE获取当前日期时间作为一个关联数组的方法

    本文实例讲述了PHP使用GETDATE获取当前日期时间作为一个关联数组的方法.分享给大家供大家参考.具体分析如下: PHP GETDATE函数是用来获得当前的日期和时间,从操作系统或一个关联数组转换成UNIX风格的日期整数. 语法格式如下 array getdate (); array getdate (integer $Time); 参数如下: Arguments $Time The number of seconds since midnight before January 1, 1970

随机推荐