- 浏览: 96241 次
- 性别:
- 来自: 广西
文章分类
最新评论
-
李涤尘:
很好,很清晰的记录
Oracle 多表查询 -
yanxiaojia521:
项目部署成功后,使用localhost可以访问,在局域网内容访 ...
Linux系统下的项目部署 -
txlong_onz:
学好正则这些都不用记了。有的时候要灵活的。
文本框的输入限制
---------------------oracle 时间运算------------------------------------------------- --两个日期间的天数 SELECT FLOOR(SYSDATE - TO_DATE('20110701', 'yyyymmdd')) FROM DUAL; --查找2002-02-28至2002-02-01间除星期一和七的天数 SELECT COUNT(*) FROM (SELECT ROWNUM - 1 RNUM FROM ALL_OBJECTS WHERE ROWNUM <= TO_DATE('2002-02-28', 'yyyy-mm-dd') - TO_DATE('2002-02-01', 'yyyy-mm-dd') + 1) WHERE TO_CHAR(TO_DATE('2002-02-01', 'yyyy-mm-dd') + RNUM - 1, 'D') NOT IN ('1', '7'); --两个日期间的月数 SELECT MONTHS_BETWEEN(SYSDATE, TO_DATE('05-21-2011', 'MM-DD-YYYY')) "MONTHS" FROM DUAL; SELECT MONTHS_BETWEEN(SYSDATE, DATE '2010-07-07') MONTHS FROM DUAL; --处理月份天数不定的办法 SELECT TO_CHAR(ADD_MONTHS(LAST_DAY(SYSDATE) + 1, -2), 'yyyymmdd'), LAST_DAY(SYSDATE) FROM DUAL; --找出今年的天数 SELECT ADD_MONTHS(TRUNC(SYSDATE, 'year'), 12) - TRUNC(SYSDATE, 'year') FROM DUAL; --闰年的处理方法 ;如果是28就不是闰年 TO_CHAR(LAST_DAY(TO_DATE('02' || :YEAR, 'mmyyyy')), 'dd') --不同时区的处理 SELECT TO_CHAR(NEW_TIME(SYSDATE, 'GMT', 'EST'), 'dd/mm/yyyy hh:mi:ss'), SYSDATE FROM DUAL; --5秒钟一个间隔,SSSSS表示5位秒数 SELECT TO_DATE(FLOOR(TO_CHAR(SYSDATE, 'SSSSS') / 300) * 300, 'SSSSS'), TO_CHAR(SYSDATE, 'SSSSS') FROM DUAL; -- 一年的第几天 SELECT TO_CHAR(SYSDATE, 'DDD'), SYSDATE FROM DUAL; --计算小时,分,秒,毫秒 SELECT DAYS, A, TRUNC(A * 24) HOURS, TRUNC(A * 24 * 60 - 60 * TRUNC(A * 24)) MINUTES, TRUNC(A * 24 * 60 * 60 - 60 * TRUNC(A * 24 * 60)) SECONDS, TRUNC(A * 24 * 60 * 60 * 100 - 100 * TRUNC(A * 24 * 60 * 60)) MSECONDS FROM (SELECT TRUNC(SYSDATE) DAYS, SYSDATE - TRUNC(SYSDATE) A FROM DUAL); SELECT SUBSTR('2004-32', 1, 4) YY, TO_NUMBER(SUBSTR('2004-32', 6)) WW FROM DUAL; --1.查询某周的第一天 SELECT TRUNC(DECODE(WW, 53, TO_DATE(YY || '3112', 'yyyyddmm'), TO_DATE(YY || '-' || TO_CHAR(WW * 7), 'yyyy-ddd')), 'd') LAST_DAY FROM (SELECT SUBSTR('2004-32', 1, 4) YY, TO_NUMBER(SUBSTR('2004-32', 6)) WW FROM DUAL); SELECT TRUNC(TO_DATE(SUBSTR('2011-01', 1, 5) || TO_CHAR((TO_NUMBER(SUBSTR('2011-01', 6))) * 7), 'yyyy-ddd'), 'd') - 6 FIRST_DAY FROM DUAL; SELECT MIN(V_DATE) FROM (SELECT (TO_DATE('200201', 'yyyymm') + ROWNUM) V_DATE FROM ALL_TABLES WHERE ROWNUM < 370) WHERE TO_CHAR(V_DATE, 'yyyy-iw') = '2002-49'; --2.查询某周的最后一天 SELECT TRUNC(DECODE(WW, 53, TO_DATE(YY || '3112', 'yyyyddmm'), TO_DATE(YY || '-' || TO_CHAR(WW * 7), 'yyyy-ddd')), 'd') - 6 FIRST_DAY FROM (SELECT SUBSTR('2004-33', 1, 4) YY, TO_NUMBER(SUBSTR('2004-33', 6)) WW FROM DUAL); SELECT TRUNC(TO_DATE(SUBSTR('2003-01', 1, 5) || TO_CHAR((TO_NUMBER(SUBSTR('2003-01', 6))) * 7), 'yyyy-ddd'), 'd') LAST_DAY FROM DUAL; SELECT MAX(V_DATE) FROM (SELECT (TO_DATE('200408', 'yyyymm') + ROWNUM) V_DATE FROM ALL_TABLES WHERE ROWNUM < 370) WHERE TO_CHAR(V_DATE, 'yyyy-iw') = '2004-33'; --3.查询某周的日期 SELECT MIN_DATE, TO_CHAR(MIN_DATE, 'day') DAY FROM (SELECT TO_DATE(SUBSTR('2004-33', 1, 4) || '001' + ROWNUM - 1, 'yyyyddd') MIN_DATE FROM ALL_TABLES WHERE ROWNUM <= DECODE(MOD(TO_NUMBER(SUBSTR('2004-33', 1, 4)), 4), 0, 366, 365) UNION SELECT TO_DATE(SUBSTR('2004-33', 1, 4) - 1 || DECODE(MOD(TO_NUMBER(SUBSTR('2004-33', 1, 4)) - 1, 4), 0, 359, 358) + ROWNUM, 'yyyyddd') MIN_DATE FROM ALL_TABLES WHERE ROWNUM <= 7 UNION SELECT TO_DATE(SUBSTR('2004-33', 1, 4) + 1 || '001' + ROWNUM - 1, 'yyyyddd') MIN_DATE FROM ALL_TABLES WHERE ROWNUM <= 7) WHERE TO_CHAR(MIN_DATE, 'yyyy-iw') = '2004-33'; ---------------------------转换函数-------------------------------------------------------- to_char() -- to_date() -- to_number('numbervalue') --转换成数值 SELECT to_number('1314') FROM dual; round('numbervalue') --取整函数(四舍五入) Select round(to_number('123.567')) from dual; floor(sysdate - to_date('20110701','yyyymmdd'))
发表评论
-
ORACLE学习笔记系列(15)使用扩展的 GROUP BY 子句(四)
2014-01-12 19:48 0ORACLE学习笔记系列(15)使用扩展的 GROUP BY ... -
ORACLE学习笔记系列(15)使用扩展的 GROUP BY 子句(三)
2014-01-12 19:46 0ORACLE学习笔记系列(15)使用扩展的 GROUP BY ... -
ORACLE学习笔记系列(15)使用扩展的 GROUP BY 子句(二)
2014-01-12 19:45 0ORACLE学习笔记系列(15)使用扩展的 GROUP BY ... -
ORACLE学习笔记系列(15)使用扩展的 GROUP BY 子句
2014-01-12 19:54 1316ORACLE学习笔记系列(15)使用扩展的 GROU ... -
ORACLE学习笔记系列(14)聚合函数
2014-01-12 19:30 1328ORACLE学习笔记系列(14)聚合函数 常用的聚合 ... -
ORACLE学习笔记系列(13)转换函数
2014-01-12 19:28 551ORACLE学习笔记系列(13)转换函数 转换函数 ... -
ORACLE学习笔记系列(12)数字函数
2014-01-12 19:26 457ORACLE学习笔记系列(12)数字函数 数字函数 ... -
ORACLE学习笔记系列(11)字符函数
2014-01-12 19:25 595ORACLE学习笔记系列(11)字符函数 字符函数 ... -
ORACLE学习笔记系列(10)正则表达式
2014-01-11 12:41 2234ORACLE学习笔记系列(10 ... -
ORACLE学习笔记系列(9)通配符和特殊字符
2014-01-05 22:28 2425ORACLE学习笔记系列(9 ... -
ORACLE学习笔记系列(8)ORACLE中的空值(NULL)和与空值(NULL)有关的函数
2014-01-05 15:02 1434ORACLE学习笔记系列(8)ORACLE中的空值(NU ... -
ORACLE学习笔记系列(7)SQL语言分类
2013-12-29 19:57 963SQL语言的五大组成部分DQL DML DDL DCL ... -
ORACLE学习笔记系列--目录
2013-12-29 19:14 685ORACLE学习笔记系列--目录 ORACL ... -
ORACLE学习笔记系列(6)Outer Join新旧语法对比分析
2013-12-18 21:55 1491从Oracle9i开始,支持ANSI/ISO ... -
ORACLE学习笔记系列(5)连接查询和联合查询
2013-12-15 16:54 1133连接查询和联合查询 一、连接查询 通过连接运 ... -
ORACLE学习笔记系列(4)ORACLE优化器
2013-12-15 15:19 849Oracle优化器介绍 1 ... -
ORACLE学习笔记系列(3)SQLPLUS里的清屏命令
2013-12-15 15:05 726SQLPLUS里的清屏命令 方法一:同时按S ... -
ORACLE学习笔记系列(2)解决 SQLPLUS分析SQL语句出现 'PLAN_TABLE' is old version
2013-12-15 14:59 1100解决 SQLPLUS分析SQL语句出现 'PLAN_TAB ... -
ORACLE学习笔记系列(1)如何使用SQLPLUS分析SQL语句
2013-12-15 14:49 1151如何使用SQLPLUS分析SQL语句 ... -
Oracle 多表查询
2012-05-17 11:41 1267Oracle 多表查询 1. SQL语句的执行顺序 SE ...
相关推荐
2. 日期和时间的基本运算:Oracle 提供了多种日期和时间的基本运算符,例如:`+`、`-`、`*`、`/` 等,可以对日期和时间进行加、减、乘、除等运算。 3. 日期和时间的格式化:使用 `to_char` 函数可以将日期和时间...
Oracle 日期函数是 Oracle 数据库中的一组功能强大且广泛使用的函数,它们可以对日期进行各种操作和计算,本次练习涵盖了 Oracle 中常用的日期函数,包括获取当前系统时间、对日期的月进行加减、获取给定日期所在月...
此外,DATEADD 函数还可以应用于各种日期处理场景,例如添加指定的时间间隔到某个日期中、计算某个日期后的时间间隔等。 DATEADD 函数的限制 -------------------- DATEADD 函数的限制是它只能添加指定的时间间隔...
Oracle 日期和时间处理函数提供了多种方式来处理日期和时间,包括日期和字符转换、日期语言设置、日期间的天数、时间为空的用法、日期范围查询、日期格式冲突问题、计算日期间的天数和计算月份之间的天数等。
本文将深入解析Oracle日期时间操作的一些核心知识点,涵盖基本的日期时间函数使用、日期时间的格式化、以及一些高级的日期时间计算技巧。 ### 一、基础日期时间函数 #### 1. SYSDATE `SYSDATE`是Oracle系统中获取...
Oracle 日期时间函数大全提供了多种日期计算函数,如计算两个日期之间的天数等。 例如,`SELECT FLOOR(SYSDATE - TO_DATE('20020405', 'YYYYMMDD')) FROM DUAL;` 计算当前日期和日期 '20020405' 之间的天数。 日期...
在Oracle数据库中,我们可以方便地执行日期时间的间隔操作,比如对当前时间进行增减指定的时间间隔。 **1. 当前时间减去7分钟的时间** ```sql SELECT SYSDATE, SYSDATE - INTERVAL '7' MINUTE FROM DUAL; ``` 此...
在Oracle数据库中,日期操作是常见的SQL查询任务,特别是在处理历史数据或进行时间相关的分析时。Oracle提供了丰富的函数来帮助用户对日期进行加减操作,这些功能强大且灵活的函数使得开发者能更精确地处理时间数据...
Oracle数据库在日期处理方面提供了丰富的函数和操作方式,使得对日期和时间的管理变得非常灵活。以下是对标题和描述中提到的知识点的详细说明: 1. **日期和字符转换**: - `to_date` 函数用于将字符型数据转换为...
通过学习和掌握以上Oracle日期函数,你可以轻松地进行日期和时间的计算、比较和格式化,提升数据库操作的效率。同时,了解如何处理时区问题也是非常重要的,特别是在分布式系统中。希望这些知识对你在处理Oracle...
在Oracle数据库中,计算连续天数或连续时间是一项常见的需求,尤其在数据分析、报表生成或者业务规则检查等场景。这个任务通常涉及到日期处理和逻辑判断,Oracle提供了丰富的日期函数和运算符来支持这类操作。本篇...
1. **获取当前日期时间**:首先使用`SYSDATE`函数获取系统的当前日期时间。 2. **转换为自1970年1月1日以来的天数**:接着将`SYSDATE`减去1970年1月1日(使用`TO_DATE`函数)得到的结果表示的是自1970年1月1日至当前...
ORACLE 中日期和时间函数汇总 Oracle 中的日期和时间函数是数据库管理系统中非常重要的一部分,掌握这些函数可以帮助开发者和 DBA 更好地处理日期和时间相关的操作。 日期和字符转换函数 Oracle 中提供了两个...
以下是对Oracle日期处理的一些关键知识点的详细说明: 1. **将时间字符串转换为时间** Oracle提供了`to_date()`函数将字符串转换为日期类型。这个函数需要两个参数:要转换的字符串和匹配的转换格式。例如,`to_...
### Oracle日期与字符串相互转换详解 #### 一、概述 在Oracle数据库中,日期与字符串之间的转换是一项常用且重要的操作。正确地进行日期与字符串之间的转换对于数据处理、查询优化等方面有着不可忽视的作用。本...
ORACLE 日期时间函数大全 oracle 日期时间函数大全是指在 Oracle 数据库中处理日期和时间相关的函数,包括日期和字符转换函数、日期算术函数、日期比较函数等。以下是 Oracle 日期时间函数大全的知识点总结: 日期...