说说 Oracle 的时间格式化参数以及在 TO_CHAR() 与 TO_DATE() 中的应用
发布日期:2021-06-29 21:02:44
浏览次数:3
分类:技术文章
本文共 1501 字,大约阅读时间需要 5 分钟。
Oracle 提供了一系列的时间格式化参数,用于对时间进行格式化处理。下面首先介绍那些常用的时间格式化参数。
1 时间格式化参数
跨度 | 参数 | 说明 | 示例 |
---|---|---|---|
世纪 | CC | 第几世纪,格式为两位。 | 21 |
年份 | YYYY | 4 位年份。 | 2020 |
年份 | Y,YYY | 4 位年份,第 1 位之后,加逗号。 | 2,020 |
年份 | YYY | 年份后三位。 | 020,完整年份为 2020。 |
年份 | YY | 年份后两位。 | 20,完整年份为 2020。 |
年份 | Y | 年份最后一位。 | 0,完整年份为 2020。 |
年份 | YEAR | 年份英文表示形式,全大写。 | TWENTY NINETEEN,入参为 2019。 |
年份 | Year | 年份英文表示形式,首字母大写。 | Twenty Nineteen,入参为 2019。 |
季度 | Q | 第几季度,格式为一位。 | 3 |
月份 | MM | 两位月份。 | 12 |
月份 | MONTH 或 Month 或 Mon | 字符表示的月份 | 12月,因为中文没有区分大小写以及月份缩写,所以这些参数在中文中所表示的值是相同的。 |
月份 | RM | 罗马数字表示的月份。 | XII,入参为 12 月份。 |
周 | WW | 本年第几周。 | 52 |
周 | W | 本月第几周。 | 3 |
日 | DD | 本月第几天。 | 25 |
日 | D | 本周第几天。 | 6 |
日 | DAY 或 Day 或 DY 或 Dy | 周几的文字表述。 | 星期五 |
日 | J | 从公元前 4713 年 1 月 1 日至今,已经经过多少天。 | 2458850 |
小时 | HH24 | 24 小时制中的小时,两位。 | 22 |
小时 | HH | 12 小时制中的小时,两位。 | 10 |
分钟 | MI | 分钟,两位。 | 51 |
秒 | SS | 秒数,两位。 | 39 |
秒 | SSSSS | 从凌晨零点开始,所经过的秒数。 | 42699 |
后缀 | AM 或 A.M. 或 PM 或 P.M. | 依据入参,输出“上午” 或“下午”。 | 上午 |
后缀 | AD 或 A.D. 或 BC 或 B.C. | 依据入参,输出“公元” 或“公元前” | 公元 |
后缀 | TH | 为日期加上英文后缀,需要配合 DD,形如 DDTH | 27TH |
后缀 | SP | 日期显示为英文拼写形式,需要配合 SP,形如 SPTH | TWENTY-SEVEN |
2 TO_CHAR 函数
语法为:TO_CHAR(x[,format])。它可以将时间值转换为字符串。format 就是时间格式化参数。
select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;
运行结果:
2019-12-30 14:36:22
3 TO_DATE 函数
语法为:TO_DATE (x[,format])。它可以将字符串转换为 Date 类型的值。如果没有指定 format 参数,那么会使用默认的数据库格式。
select to_date('2020-10-10 23:13:03','YYYY-MM-DD HH24:MI:SS') from dual;
运行结果:
2020-10-10 23:13:03
4 组合使用 TO_CHAR 函数与 TO_DATE 函数
组合它们,可以把一种时间格式的字符串,转换为另一种格式。比如下面的示例:
select to_char(to_date('2020-10-10','YYYY-MM-DD'),'YYYY.MM.DD') from dual;
运行结果:
2020.10.10
也可以只显示字符串中的部分时间内容:
select to_char(to_date('2020-10-10','YYYY-MM-DD'),'MM-DD') from dual;
运行结果:
10-10
转载地址:https://deniro.blog.csdn.net/article/details/103745618 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
能坚持,总会有不一样的收获!
[***.219.124.196]2024年04月13日 23时02分27秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
移植了Qt4.5
2019-04-30
DM3730触摸屏校验
2019-04-30
在子线程中new Handler报错--Can't create handler inside thread that has not called Looper.prepare()
2019-04-30
移植Qt4.7.3
2019-04-30
Qt移植对USB鼠标键盘、触摸屏的支持
2019-04-30
LCD驱动移植
2019-04-30
驱动开发小结
2019-04-30
Qt Creator创建纯C、c++工程
2019-04-30
Android单元测试之 Robolectric3.0+
2019-04-30
qt configure参数解释
2019-04-30
Git Push 避免用户名和密码方法
2019-04-30
Java总结篇系列:Java多线程(一)
2019-04-30
产品设计开发要领
2019-04-30
Android线程操作类(暂停、重新开启、停止)
2019-04-30
android - JNI - 一维数组、二维数组的访问与使用
2019-04-30
在 Android Studio 2.2 中愉快地使用 C/C++
2019-04-30
C++和JNI的数据转换
2019-04-30
JNI 传递结构体参数
2019-04-30
JNI中枚举类型作为参数
2019-04-30
qlineedit tab焦点处无法输入问题
2019-04-30