`

to_char与trunc函数 比较区别

    博客分类:
  • sql
阅读更多
出处:http://blog.sina.com.cn/s/blog_6e9fae1301011slj.html

一、to_char函数

Parameter    Explanation
YEAR           Year spelled out
YYYY           4 digits of year
YYY            3 digits of year
YY             2 digits of year
Y              1 digit of year
IYYY           4digits year based on the ISO standard
IYY            3 digits of ISO year
IY             2 digits of ISO year
I              1 digit of ISO year
Q              Quarter of year (1 .. 4)
MM             Month (01 ..12)
MON            Abbreviated name of month
MONTH          Name of month, padded with blanks to length of 9 characters.
RM             Roman numeral month (I .. XII)
WW             Week of year (1-53) where 7 days 1 week (与星期几无关)
W              Week of month (1-5) where 7 days 1 week (与星期几无关)
IW             Week of year (1-52 or 1-53) based on the ISO standard.
               (周一到周日为一周,若1日为周五-周日,则为上年最后一周)
D              Day of week (周日1 .. 周六7)
DY             Abbreviated name of day.
DAY            Name of day
DD             Day of month (1-31)
DDTH           Day of month (1-31)
DDD            Day of year (1-366)
J              Julian day;the number of days since January 1, 4712 BC.
HH             Hour of day (1-12).
HH12           Hour of day (1-12).
HH24           Hour of day (0-23).
MI             Minute (0-59).
SS             Second (0-59).
SSSSS          Seconds past midnight (0-86399).
FF             Fractional seconds.
XXXXX          转换为8进制

to_char(1210.73, '9999.9')       would return '1210.7'
to_char(1210.73, '9,999.99')     would return '1,210.73'
to_char(1210.73, '$9,999.00')    would return '$1,210.73'
to_char(21, '000099')            would return '000021'
to_char(21, '999999')            would return '    21'
to_char(21, 'FM999999')          would return '21'
to_char(sysdate, 'FMYYY')        would return '8'          --FM表示去掉0或空格

to_char(125, 'XXXXX')            would return '7D'
to_number('7D','XXXXX')          would return '125'


另注:trunc与to_char的比较

trunc原意为截取数据小数部分,例如:

trunc(23.48429387)    返回23
trunc(23.48429387,3)  返回23.484
trunc(-1.443432)      返回-1

但trunc(date) 具有与to_char(date) 相似的功能,但有区别:

trunc(sysdate,'cc')   取当世纪的第一天     to_char(sysdate,'cc')   取当世纪数值
trunc(sysdate,'yyyy') 取当年的第一天       to_char(sysdate,'yyyy') 取当年数值
trunc(sysdate,'iyyy') 取上年的最后一天     to_char(sysdate,'iyyy') 取当年数值
trunc(sysdate,'q')    取当季第一天         to_char(sysdate,'iyyy') 取当季数值
trunc(sysdate,'mm')   取当月第一天         to_char(sysdate,'mm')   取当月数值
trunc(sysdate,'ww')   取当周第一天(周二)   to_char(sysdate,'ww')   取当周数值(第几周)
trunc(sysdate,'iw')   取当周第一天(周一)   to_char(sysdate,'iw')   取当周数值(第几周)
分享到:
评论

相关推荐

    oracle 数值型函数,字符型函数,日期函数,转换函数,to_char

    Oracle数据库提供了丰富的日期处理函数,如`ADD_MONTHS`, `MONTHS_BETWEEN`, `NEXT_DAY`, `LAST_DAY`, `TRUNC`, `ROUND`, `EXTRACT`, `TO_CHAR`等,用于执行日期加减运算、计算两个日期之间的间隔、提取日期部分、...

    Oracle的to_date函数.doc

    在 Oracle 中,还有其他日期函数,如 to_char 函数,可以将 DATE 类型的日期转换为字符串。例如: select sysdate,to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual; 在上面的例子中,sysdate 是当前日期和...

    Oracle特色函数与复杂更新应用.pptx

    Oracle 特色函数与复杂更新应用 Oracle 数据库中提供了一些特色函数,能够帮助开发者更方便地操作和处理数据。这些函数可以分为几大类,包括转换函数、通用函数、日期函数等。 转换函数 在 Oracle 中,转换函数...

    Oracle to_char 日期转换字符串语句分享

    SQL>select to_char(sysdate,’YYYY-MM-DD HH12:MI:SS AM’)from dual; TO_CHAR(SYSDATE,’YYYY-MM-DDHH1 —————————— 2007-06-29 02:50:06 下午 2》以24小时制显示 SQL> select to_char(sysdate,’...

    Oracle to_date() 用法细节.txt

    SELECT TO_CHAR(TRUNC(SYSDATE, 'YYYY'), 'YYYY') FROM DUAL; ``` ##### 3. 当前时间戳 - **获取当前时间戳(精确到秒)**: ```sql SELECT TO_CHAR(CURRENT_TIMESTAMP(5), 'DD-MON-YYYY HH24:MI:SS.FF') FROM ...

    Oracle to_date()函数的用法介绍

    总之,Oracle的to_date()函数是日期处理的核心,结合其他相关函数,如`to_char()`、`trunc()`和`round()`,可以实现灵活的日期和时间操作。了解这些函数的使用对于在Oracle数据库中进行日期处理至关重要。

    Oracle日期类型处理

    在SQL查询中,可以通过`TO_CHAR`函数将日期转换为不同的字符串格式以便于展示或进一步处理。 #### 二、常用日期操作 1. **获取当前系统日期:** - `SELECT SYSDATE FROM DUAL;` 这条语句用于获取当前系统的...

    Oracle中TO-DATE格式.docx

    TO_CHAR 函数的基本语法是 TO_CHAR( date, format ),其中 date 是要转换的日期,format 是转换的格式。例如,TO_CHAR(sysdate, 'YYYY-MM-DD HH24:MI:SS') 将当前日期转换为字符串 'YYYY-MM-DD HH24:MI:SS'。 在...

    oracle中关于取时间的SQL语句.pdf

    TO_NUMBER(TO_CHAR(TRUNC(SYSDATE, 'yyyy'), 'd')) year_week_day, ... FROM ... ``` 2. **计算当月的第几周**: 这个例子展示了如何找出指定日期在月份中的周数。首先,找到当月的第一天,然后计算该日期与...

    Oracle时间日期操作

    例如,使用 to_char 函数可以将 936000 秒转换为天、小时和分钟:select to_char(floor(TRUNC(936000/(60*60))/24))||'天'||to_char(mod(TRUNC(936000/(60*60)),24))||'小时'||to_char(mod(TRUNC(936000/60),60))||'...

    日常收集整理oracle trunc 函数处理日期格式(很实用)

    本文给大家分享的oracle trunc 函数处理日期格式的相关知识,非常具有参考价值,具体请看下文说明吧。 代码如下: select to_char(sysdate,’yyyy-mm-dd hh24:mi:ss’) from dual; –显示当前时间 2011-12-29 16:...

    Oracle时间操作

    Oracle的时间操作不仅限于这些,还包括其他函数,如`extract`用于提取日期的特定部分,`round`和`trunc`用于对日期进行四舍五入或截断,`to_date`用于将字符串转换为日期,以及`to_timestamp`和`to_char`用于时间戳...

    Oracle时间操作大全.pdf

    * SELECT to_char(floor(TRUNC(936000/(60*60))/24))||' '||to_char(mod(TRUNC(936000/(60*60)),24))||' ' FROM DUAL 日期和时间格式 Oracle 中日期和时间格式可以使用 TO_CHAR 函数来实现,例如: * TO_CHAR...

    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` 是一个非常强大的函数,用于将日期或数字转换为字符串,并可以指定不同的格式模型。文件中给出了一些示例: - **YYYYYY**:表示年份,但这里似乎存在一些错误,因为 `'Y'` 格式模型表示的是世纪号(即从...

    学习ORACLE日期函数一分析.pdf

    本文将深入探讨Oracle的日期函数,特别是与日期和字符转换相关的`TO_DATE`和`TO_CHAR`函数,以及如何处理日期时间的各种方面。 1. **日期和字符转换**: - `TO_CHAR`函数用于将日期或时间类型转换为字符格式,便于...

    Oracle的to_date函数.docx

    Oracle的`to_date`函数是数据库系统中用于将字符串转换为日期类型的函数,它在处理日期和时间数据时非常有用。这个函数接受两个参数:要转换的字符串和一个表示输入字符串格式的模式。 1. `to_date`函数的日期格式...

    ORACLE日期函数01课程.pdf

    在Oracle中,`TO_DATE`和`TO_CHAR`是两个核心的日期转换函数,它们分别用于将字符串转换为日期和将日期转换为字符串。 1. `TO_DATE`函数: `TO_DATE`函数用于将一个字符串转换为日期格式。例如,`to_date('2007-11...

Global site tag (gtag.js) - Google Analytics