`
minghe_zy
  • 浏览: 125888 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

oracle获得日期自然周-函数

 
阅读更多

文章来源:http://lijun0349-163-com.iteye.com/blog/616318

 

select to_week_by_year(to_date('2010-1-1', 'yyyy-MM-dd'))
  from bak_member
where rownum = 1  //输出:1


select to_week_by_year(to_date('2010-1-3', 'yyyy-MM-dd'))
  from bak_member
where rownum = 1  //输出:1


select to_week_by_year(to_date('2010-1-4', 'yyyy-MM-dd'))
  from bak_member
where rownum = 2  //输出:1


函数如下:
create or replace function to_week_by_year(sdate in date) return number is
  Result number;
begin
  select to_char(decode(sign((to_date(to_char(sdate, 'yyyymmdd'),
                                      'yyyymmdd') +
                             to_number(decode(to_char(trunc(to_date(to_char(sdate,
                                                                             'yyyymmdd'),
                                                                     'yyyymmdd'),
                                                             'yyyy'),
                                                       'd'),
                                               '1',
                                               '8',
                                               to_char(trunc(to_date(to_char(sdate,
                                                                             'yyyymmdd'),
                                                                     'yyyymmdd'),
                                                             'yyyy'),
                                                       'd'))) - 2) -
                             last_day(to_date(to_char(sdate, 'yyyymmdd'),
                                              'yyyymmdd'))),
                        1,
                        last_day(to_date(to_char(sdate, 'yyyymmdd'),
                                         'yyyymmdd')),
                        (to_date(to_char(sdate, 'yyyymmdd'), 'yyyymmdd') +
                        to_number(decode(to_char(trunc(to_date(to_char(sdate,
                                                                        'yyyymmdd'),
                                                                'yyyymmdd'),
                                                        'yyyy'),
                                                  'd'),
                                          '1',
                                          '8',
                                          to_char(trunc(to_date(to_char(sdate,
                                                                        'yyyymmdd'),
                                                                'yyyymmdd'),
                                                        'yyyy'),
                                                  'd'))) - 2)),
                 'ww')
    into result
    from dual;

  return Result;
end to_week_by_year;

分享到:
评论

相关推荐

    oracle11基础-字符-数字-日期-转换-函数.docx

    ..oracle11基础_字符_数字_日期_转换-函数.docx

    oracle11基础-字符-数字-日期-转换-函数.pdf

    ..oracle11基础_字符_数字_日期_转换-函数.pdf

    oracle自定义日期函数

    Oracle 自定义日期函数 Oracle 日期处理函数是数据库管理系统中非常重要的一部分,最近看到有人在做 T-SQL 与 PL/SQL 的转化,问了些有关时间函数的处理。在 PL/SQL 中,Oracle 提供了其他的方法来处理日期函数,...

    oracle函数大全-数字-字符-日期-聚合函数

    本篇文章将详细探讨在"oracle函数大全-数字-字符-日期-聚合函数"这个主题中涵盖的关键知识点。 首先,我们来看数字函数。在Oracle中,数字函数用于对数值进行各种操作,例如四舍五入、取整、求平方根等。`ROUND()`...

    oracle-instantclient11.2-sdk-11.2.0.1.0-1.x86_64.zip

    Oracle Instant Client是Oracle公司提供的一款轻量级的数据库连接工具,它允许开发者和系统管理员在不安装完整Oracle数据库的情况下,与Oracle数据库进行交互。这个压缩包"oracle-instantclient11.2-sdk-11.2.0.1.0-...

    Oracle 获得某日期属于一年中的第几个自然周

    标题“Oracle 获取某日期属于一年中的第几个自然周”指的是在Oracle数据库系统中,通过SQL查询来确定一个特定日期在当年是第几周的问题。在实际业务中,这样的功能可能用于统计、报告或者数据分析,例如,公司可能...

    oracle11g-client-win-64客户端安装包

    oracle11g-client-win-64客户端安装包

    Oracle自定义聚合函数-分析函数

    Oracle 自定义聚合函数-分析函数 Oracle 自定义聚合函数是一种强大且灵活的功能,允许用户根据自己的需求创建自定义的聚合函数。聚合函数是一种特殊的函数,它可以对一组数据进行处理和计算,并返回一个结果。 ...

    ORACLE常用日期函数集合

    ### ORACLE常用日期函数集合详解 #### 一、概述 在Oracle数据库中,日期处理是一项非常重要的功能。本文将详细介绍一些常用的Oracle日期函数及其应用场景,帮助数据库管理员或开发者更好地理解和运用这些函数,以...

    Oracle 获得某日期属于该前月中的第几个自然周

    在Oracle数据库中,计算某个日期属于其前一个月中的第几个自然周是一项常见的需求,这在数据分析、报表生成或业务逻辑处理中很有用。这个任务可以通过编写一个自定义函数来实现,例如提供的`to_week_by_month.fnc`...

    ORACLE中日期和时间函数汇总

    ORACLE 中日期和时间函数汇总 Oracle 中的日期和时间函数是数据库管理系统中非常重要的一部分,掌握这些函数可以帮助开发者和 DBA 更好地处理日期和时间相关的操作。 日期和字符转换函数 Oracle 中提供了两个...

    1-oracle培训整套教程(存储过程-函数-触发器,异常处理,游标.存储包)

    你可以学习如何创建自定义函数,以及如何在SQL查询和存储过程中使用这些函数,这在`1-oracle教程之存储过程-函数-触发器.ppt`中会有详细介绍。 触发器是数据库响应特定事件(如INSERT、UPDATE或DELETE)时自动执行...

    oracle日期时间判断函数

    针对标题"oracle日期时间判断函数"和描述中提到的内容,我们可以深入探讨两个关键的函数,它们主要用于判断字符串是否可以转换为合法的日期时间格式。 1. TO_DATE函数: TO_DATE是Oracle中用于将字符串转换为日期...

    oracle日期函数字符函数聚合函数

    Oracle数据库中的日期函数、字符函数和聚合函数是数据库操作中常用的功能,对于数据处理和查询至关重要。以下将详细解释这些函数的用法和示例。 日期函数主要用于处理和操作日期数据,以下是一些主要的Oracle日期...

    Oracle日期函数练习

    Oracle 日期函数是 Oracle 数据库中的一组功能强大且广泛使用的函数,它们可以对日期进行各种操作和计算,本次练习涵盖了 Oracle 中常用的日期函数,包括获取当前系统时间、对日期的月进行加减、获取给定日期所在月...

    Oracle常用日期型函数

    Oracle常用日期型函数,大家经常想用的,又不想记得。现在,给你一个方便的资源

    oracle资料大全--函数,编程大全

    本资料大全聚焦于Oracle中的函数、PL/SQL编程、触发器以及存储过程,这些都是Oracle数据库开发与管理的重要组成部分。 首先,Oracle分析函数是用于处理集合数据的高级工具,它们可以在一行上执行计算,不仅限于当前...

    oracle函数大全-数字处理函数

    Oracle数据库系统是世界上最广泛使用的数据库管理系统之一,它提供了丰富的内置函数来处理各种数据类型,包括数字和字符串。本文将深入探讨Oracle中的数字处理函数,帮助你更好地理解和利用这些功能强大的工具。 1....

    oracle日期处理函数大全

    Oracle数据库在处理日期和时间数据时提供了丰富的函数和操作方式,这些函数可以帮助我们进行日期的转换、计算、格式化以及比较。以下是一些关键的Oracle日期处理函数和SQL语句的详细说明: 1. **TO_DATE函数**:...

Global site tag (gtag.js) - Google Analytics