`

Oracle to_date() 用法细节

 
阅读更多

 

to_date()与24小时制表示法及mm分钟的显示:

 

一、在使用Oracle的to_date函数来做日期转换时,很多Java程序员也许会直接的采用“yyyy-MM-dd HH:mm:ss”的格式作为格式进行转换,但是在Oracle中会引起错误:“ORA 01810 格式代码出现两次”。 

如:select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mm:ss') from dual;

 

原因是SQL中不区分大小写,MM和mm被认为是相同的格式代码,所以Oracle的SQL采用了mi代替分钟。 

select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mi:ss') from dual;

二、另要以24小时的形式显示出来要用HH24 

select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from dual;//mi是分钟 

select to_char(sysdate,'yyyy-MM-dd HH24:mm:ss') from dual;//mm会显示月份  

oracle中的to_date参数含义 

   1.日期格式参数含义说明  

D 一周中的星期几  

DAY 天的名字,使用空格填充到9个字符  

DD 月中的第几天  

DDD 年中的第几天  

DY 天的简写名  

IW ISO标准的年中的第几周  

IYYY ISO标准的四位年份  

YYYY 四位年份  

YYY,YY,Y 年份的最后三位,两位,一位  

HH 小时,按12小时计  

HH24 小时,按24小时计  

MI 分  

SS 秒  

MM 月  

Mon 月份的简写  

Month 月份的全名  

W 该月的第几个星期  

WW 年中的第几个星期     1.日期时间间隔操作 

  当前时间减去7分钟的时间 

  select sysdate,sysdate - interval ’7’ MINUTE from dual 

  当前时间减去7小时的时间 

  select sysdate - interval ’7’ hour from dual 

  当前时间减去7天的时间 

  select sysdate - interval ’7’ day from dual 

  当前时间减去7月的时间 

  select sysdate,sysdate - interval ’7’ month from dual 

  当前时间减去7年的时间 

  select sysdate,sysdate - interval ’7’ year from dual 

  时间间隔乘以一个数字 

  select sysdate,sysdate - 8 *interval ’2’ hour from dual 

   2.日期到字符操作 

  select sysdate,to_char(sysdate,’yyyy-mm-dd hh24:mi:ss’) from dual 

  select sysdate,to_char(sysdate,’yyyy-mm-dd hh:mi:ss’) from dual 

  select sysdate,to_char(sysdate,’yyyy-ddd hh:mi:ss’) from dual 

  select sysdate,to_char(sysdate,’yyyy-mm iw-d hh:mi:ss’) from dual 

  参考oracle的相关关文档(ORACLE901DOC/SERVER.901/A90125/SQL_ELEMENTS4.HTM#48515) 

   3. 字符到日期操作 

  select to_date(’2003-10-17 21:15:37’,’yyyy-mm-dd hh24:mi:ss’) from dual 

  具体用法和上面的to_char差不多。 

   4. trunk/ ROUND函数的使用 

  select trunc(sysdate ,’YEAR’) from dual 

  select trunc(sysdate ) from dual 

  select to_char(trunc(sysdate ,’YYYY’),’YYYY’) from dual 

    5.oracle有毫秒级的数据类型 

  --返回当前时间 年月日小时分秒毫秒 

  select to_char(current_timestamp(5),’DD-MON-YYYY HH24:MI:SSxFF’) from dual; 

  --返回当前时间的秒毫秒,可以指定秒后面的精度(最大=9) 

  select to_char(current_timestamp(9),’MI:SSxFF’) from dual; 

   6.计算程序运行的时间(ms) 

  declare 

  type rc is ref cursor; 

  l_rc rc; 

  l_dummy all_objects.object_name%type; 

  l_start number default dbms_utility.get_time; 

  begin 

  for I in 1 .. 1000 

  loop 

  open l_rc for 

  ’select object_name from all_objects ’|| 

  ’where object_id = ’ || i; 

  fetch l_rc into l_dummy; 

  close l_rc; 

  end loop; 

  dbms_output.put_line 

  ( round( (dbms_utility.get_time-l_start)/100, 2 ) || 

  ’ seconds...’ ); 

  end;

分享到:
评论

相关推荐

    Oracle to_date() 用法细节.txt

    本文将详细介绍 `to_date()` 的使用方法、参数格式以及常见问题解决方法。 #### 二、基本语法与格式 `to_date()` 函数的基本语法如下: ```sql TO_DATE (expression, format_mask) ``` 其中: - `expression`: ...

    oracle_to_javabean

    2. **Oracle PL/SQL语法**:存储过程中大量使用了Oracle PL/SQL的语法特性,如条件语句(`IF...THEN...ELSE`)、循环(`FOR LOOP`)、字符串操作函数(`InitCap`, `Replace`)等。 3. **JavaBean类设计原则**:...

    Oracle to_char函数的使用方法

    除了Oracle,PostgreSQL也提供了一套类似的格式化函数,例如`to_char`、`to_date`、`to_timestamp`和`to_number`。这些函数在PostgreSQL中的使用方式和Oracle类似,但可能在某些细节上有所不同,例如PostgreSQL中的...

    向oracle中插入日期

    ### 向Oracle中插入日期——to_date函数的使用方法 在处理Oracle数据库中的日期类型数据时,经常会遇到需要将字符串转换为日期格式的情况。Oracle提供了一个非常强大的函数`to_date()`来实现这一功能。本文将详细...

    Oracle数据库的周数计算

    通过上述介绍,我们可以了解到在Oracle数据库中,根据不同的需求可以选择使用“WW”或“IW”的周数计算方法。这两种方法各有其适用场景,选择合适的方法可以更准确地完成日期相关的数据处理任务。在具体实现过程中,...

    oracle日历转化成农历

    在Oracle中,日期数据类型DATE存储的是日期和时间信息,包括年、月、日、小时、分钟和秒。当我们需要将日期转换为农历时,实际上是在处理日期的计算逻辑,因为农历与阳历的转换涉及到复杂的天文算法。 要实现这个...

    ORACLE移植DB2注意事项

    Oracle和DB2都提供了丰富的日期时间处理函数,如`TO_DATE`、`TO_CHAR`等,但它们的具体用法及参数格式可能存在差异。例如: ```sql -- Oracle SELECT TO_DATE('2023-01-01', 'YYYY-MM-DD'), TO_CHAR(SYSDATE, 'YYYY-...

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

    在Oracle中,我们可以使用以下方法来获取符合ISO标准的自然周: 1. 首先,将日期转换为ISO周的年份,使用`EXTRACT(YEAR FROM date - TRUNC(date, 'IW'))`。 2. 然后,提取该日期在该年的周数,使用`EXTRACT(WEEK ...

    DB2常用函数与Oracle比较

    通过以上内容的比较可以看出,虽然DB2和Oracle在某些细节上存在差异,但大部分函数的功能和用法都非常接近。这为开发者从Oracle向DB2迁移提供了便利条件,同时也需要注意到两者之间的区别,以便在实际应用中做出正确...

    Oracle_数据库日常维护手册_常用SQL_脚本.txt

    - 如果日志文件显示“ORA-600”这类错误,则可能涉及到Oracle的内部错误,此时应该仔细检查相关的跟踪文件(TRC文件),以获取更多的错误细节。 - 当日志文件中出现“ORA-600”错误时,通常意味着数据库的某些部分...

    oracle和db2的区别

    通过上述对比可以看出,尽管Oracle和DB2在某些基本操作上存在相似之处,但它们在具体实现细节上仍有较大不同。了解这些差异有助于数据库管理员和技术人员根据特定需求选择最适合的技术方案。无论是从性能优化还是...

    oracle 10G函数大全(中文)

    这个Oracle 10G函数大全中文文档涵盖了以上所有内容,并可能包括更多的细节,如函数参数、返回值、使用注意事项等,为开发者和DBA提供了全面的参考资料。通过深入理解和熟练运用这些函数,可以提升数据库管理的效率...

    Sqlserver、Oracle、MySql、PostgreSql、SqlLite数据库差异

    - 实现方式略有不同,例如在 Sqlserver 中可以使用 `IDENTITY` 关键字,在 Oracle 中则使用序列(`SEQUENCE`)。 - **表名规范**: - 各数据库在命名规则上略有不同,但普遍推荐使用有意义的英文单词或短语,并遵循...

    Oracle110个常用函数……PDF清晰版

    本资料是基于网络资源整理而成的Oracle数据库110个常用函数汇总,旨在帮助读者更好地理解和掌握这些函数的应用场景和技术细节。这些函数不仅适用于求职面试准备,也是实际开发工作中不可或缺的一部分。 ### Oracle...

    oracle函数大全(CHM格式).rar

    在这个"Oracle函数大全"的CHM文件中,我们可以期待找到分类清晰、全面详尽的Oracle函数文档,包括函数的语法、参数、返回值、使用示例以及可能遇到的问题和解决方法。 Oracle数据库中的函数可以分为多种类型,包括...

    oracle scheuler

    本文将详细介绍 Oracle Scheduler 的主要组成部分及其使用方法。 #### 二、使用 Jobs **1.1 创建 Jobs** 创建 Job 是通过调用 `DBMS_SCHEDULER` 包中的 `CREATE_JOB` 过程实现的。此过程允许用户指定任务的执行...

    oracle内部函数大全

    根据Oracle官方文档和实际应用经验,我们将这些内置函数按照不同的功能类型进行分类,并逐一介绍其作用和用法。 #### 数值型函数 1. **ABS(X)**: 返回参数X的绝对值。例如,`ABS(-10)`返回`10`。 2. **CEIL(X)**: ...

    SqlServer转换Oracle.docx

    4. **字符串转日期**:使用`TO_DATE('YYYY-MM-DD HH24:MI:SS', 'YYYY-MM-DD HH24:MI:SS')`。 5. **日期加减**:在Oracle中直接使用加减运算符`+`或`-`。 6. **日期部分提取**:如提取年份、月份、日、小时、分钟、秒...

    db2和oracle的区别.docx

    4. 类型转换:Oracle通常使用`to_char()`,`to_date()`,`to_number()`等函数,而DB2则有`char()`,`varchar()`,`int()`,`date()`,`time()`等。 四、性能和优化 Oracle以其强大的并行执行引擎和自动优化器著称,...

    row_number,根据多个字段过滤,partition by

    - **PARTITION BY** 子句中的`name || idNumber || TO_CHAR(date, 'YYYYMMDD')`指定了分区依据,即将`name`、`idNumber`以及格式化后的`date`字段作为分区条件。 - **ORDER BY id** 子句则决定了每个分区内部行号的...

Global site tag (gtag.js) - Google Analytics