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

oracle to_date、to_char、to_number之间的转换

 
阅读更多

1.TO_CHAR 是把日期或数字转换为字符串

   例子:TO_CHAR(number, '格式') --处理数字
            TO_CHAR(price,’$99,999.99’);

            TO_CHAR(date,'格式') --处理日期

            TO_CHAR(sysdate,'yyyy-mm-dd hh24:mi:ss')

       

2.TO_DATE 是把字符串转换为数据库中得日期类型转换函数

   例子:TO_DATE(date,'格式')

            TO_DATE('2011-12-22 00:00:01','yyyy-mm-dd hh24:mi:ss')

3.TO_NUMBER 将字符转化为数字

   例子:TO_NUMBER(price, '99,999,999')

            数字格式格式
            9 代表一个数字
            0 强制显示0
            $ 放置一个$符
            L 放置一个浮动本地货币符
            . 显示小数点
            , 显示千位指示符

           日期格式
            格式控制 描述
            YYYY、YYY、YY 分别代表4位、3位、2位的数字年
            YEAR 年的拼写 
            MM 数字月
            MONTH 月的全拼
            MON 月的缩写
            DD 数字日
            DAY 星期的全拼
            DY 星期的缩写
            AM 表示上午或者下午
            HH24、HH12 12小时制或24小时制
            MI 分钟
           SS 秒钟
           SP 数字的拼写
           TH 数字的序数词

    在oracle中日期格式不区分大小写,mm是月、mi是分钟。

函数使用

1.查询日期是星期几

select to_char(to_date('2011-12-26','yyyy-mm-dd'),'day','NLS_DATE_LANGUAGE = American') from dual; 

2.两个日期间的天数

select floor(sysdate - to_date('20111201','yyyymmdd')) from dual;

3.检查两个日期的条件
a_date between to_date('20111101','yyyymmdd') and to_date('20111231','yyyymmdd')

4.查找月份 

 select months_between(to_date('11-11-2011','MM-DD-YYYY'),to_date('10-11-2011','MM-DD-YYYY')) "MONTHS" FROM DUAL; 

5.获得小时

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

6.获得日期在所在月的最后一天

select to_char(add_months(last_day(sysdate) +1, -2), 'yyyymmdd'),last_day(sysdate) from dual 
7.不同时区的显示
select to_char( NEW_TIME( sysdate, 'GMT','EST'), 'dd/mm/yyyy hh:mi:ss') ,sysdate from dual;    
8.一年的第几天   

select TO_CHAR(SYSDATE,'DDD'),sysdate from dual

9.计算小时,分,秒,毫秒    

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     
   )

10.返回日期列表中最晚日期

select greatest('01年-1月-04','04年-1月-04','10年-2月-04') from dual 

 

 

分享到:
评论

相关推荐

    Oracle to_date() 用法细节.txt

    `to_date()` 是 Oracle 数据库中的一个重要函数,用于将字符串转换为日期格式。在实际应用中,尤其在处理时间戳或者进行日期比较时非常有用。本文将详细介绍 `to_date()` 的使用方法、参数格式以及常见问题解决方法...

    Oracle中TO_DATE、TO_CHAR,Oracle函数大全

    在Oracle数据库中,`TO_DATE` 和 `TO_CHAR` 是两个非常重要的转换函数,它们用于在日期和字符串之间进行转换。这两个函数对于处理日期相关的数据至关重要,尤其在数据分析和报表生成时。 `TO_DATE` 函数是将字符...

    oracle-sql基本语法例子,包括to_date,to_char

    总结的sql语法,其中包括一些函数的用法,to_date,to_char,to_number等等函数

    Oracle to_char

    Oracle 的 to_char 函数是一个功能强大且灵活的格式化函数,能够将各种数据类型(日期/时间、整数、浮点数、数字)转换成格式化的字符串,并且能够从格式化的字符串转换回原始的数据类型。该函数的第二个参数是用于...

    oracle to_char function

    Oracle的`to_char`函数是一个强大的格式化工具,它允许用户将数据库中的日期、数值、时间等数据类型转换为格式化的字符串。这个函数在PL/SQL编程中非常常见,可以帮助开发人员按照特定的样式和格式展示数据,提高...

    oracle中varchar与date的转换,number与varchar的转换.pdf

    在 Oracle 中,数据类型的转换是非常常见的操作,本文将详细介绍 Oracle 中的 varchar 和 date 的转换、number 和 varchar 的转换。 一、varchar 和 date 的转换 在 Oracle 中,varchar 类型用于存储字符串数据,...

    oracle使用to_date查询一周的第一天日期

    代码如下:CREATE OR REPLACE FUNCTION f_week_to_date(a_week varchar2) RETURN CHAR IS v_first_date char(10); v_date_of_week number(1); BEGIN select to_char(to_date(substr(a_week, 1, 4) || ‘0101’,...

    Oracle中实现datadiff函数

    DATEDIFF('D', startDate, endDate) * 24 * 60 * 60 + (TO_NUMBER(TO_CHAR(CDateTime(endDate), 'SS')) - TO_NUMBER(TO_CHAR(CDateTime(startDate), 'SS'))) ELSE -29252888 END INTO reallyDoNumeric FROM ...

    oracle to_char函数将number转成string

    `to_char`函数的基本语法是`to_char(number_type, format_mask)`,其中`number_type`是你想要转换的数字或日期,`format_mask`则定义了转换后的字符串格式。在处理数字转换时,`format_mask`中的字符有着特定的含义...

    Oracle Date常用方法封装

    TO_CHAR函数可以帮助我们将Date对象转换为字符串。例如: ```sql DECLARE formatted_date VARCHAR2(20); BEGIN formatted_date := TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS'); -- 格式化当前日期和时间 DBMS_...

    oracle函数大全(分类显示).zip_Oracle 函数分类_oracle_oracle函数分类_oracle函数查阅用文档

    TO_CHAR将数值或日期转换为字符串,TO_NUMBER将字符串转换为数字,TO_DATE则将字符串转换为日期。 5. **聚合函数**: COUNT、SUM、AVG、MAX、MIN,用于对一组值进行统计。COUNT返回行数,SUM计算总和,AVG求平均值...

    Oracle数据库日期遍历功能的实现.pdf

    totalDay := to_number(last_day(to_date(firstYear || '-' || to_char(id) || '-01', 'yyyy-mm-dd'))); -- 日期遍历 for dayId in 1..totalDay loop v_date.day := to_char(substr(firstDay, 1, 7) || '-' || ...

    Oracle to_char函数的使用方法

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

    oracle学习笔记

    to_number(to_date(to_char(d.surmon,'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss') - to_date('1970-01-01 8:0:0', 'yyyy-mm-dd hh24:mi:ss'))*24*60*60*1000 from ( SELECT case to_number(to_char...

    oracle字段类型转换的处理

    对于日期和数字之间的转换,可以使用`TO_CHAR`和`TO_DATE`: ```sql -- 将日期字段转换为字符 SELECT TO_CHAR(date_column, 'YYYY-MM-DD') FROM table_name; -- 将字符字段转换为日期 SELECT TO_DATE(char_column, ...

    PL_SQL生成日期维度表

    v_date_key := TO_NUMBER(TO_CHAR(TO_DATE(TO_CHAR(dDate, 'yyyy-mm-dd'), 'yyyy-mm-dd'), 'yyyymmdd')); v_date_value := TO_DATE(TO_CHAR(dDate, 'yyyy-mm-dd'), 'yyyy-mm-dd'); v_date_short := TO_CHAR(dDate...

    oracle 日期函数

    ### DATE 与 NUMBER 之间的转换 在进行日期计算时,常常需要将日期转换为数字类型,以便于进行算术运算。例如,以下查询计算当前日期与特定日期之间的天数差: ```sql SELECT FLOOR(SYSDATE - TO_DATE('20020405', '...

    oracle-function--api.zip_oracle_oracle API_oracle sql api

    3. `to_char(date, format)`:将日期转换为字符串。 4. `add_months(date, months)`:在日期上增加指定的月数。 5. `trunc(date, 'unit')`:按指定单位(如年、月、日)截断日期。 四、Oracle数学函数 1. `round...

    Oracle_PL-SQL.rar_ORACLE PL_oracle_oracle sql_oracle 教程_pl sql

    1. **变量与数据类型**:PL/SQL支持多种数据类型,包括数值类型(如NUMBER)、字符类型(如VARCHAR2、CHAR)、日期时间类型(如DATE)以及布尔类型(BOOLEAN)等。声明变量是编写PL/SQL程序的第一步,理解并正确使用...

Global site tag (gtag.js) - Google Analytics