oracle:To_char

在Oracle中,将日期转换为字符串主要通过TO_CHAR函数实现,该函数支持丰富的格式化参数来控制输出样式:

  • 日期部分格式化

‌年份‌:YYYY(四位年)、YY(两位年)、YEAR(英文全拼)

‌月份‌:MM(数字月)、MON(缩写如NOV)、MONTH(全拼如NOVEMBER)

‌日‌:DD(月中的日)、DDD(年中的日)、DY(星期缩写如FRI)、DAY(星期全拼如FRIDAY)

‌时间‌:HH24(24小时制)、HH12(12小时制)、MI(分钟)、SS(秒)、FF(毫秒)

  • 修饰符与特殊格式

FM前缀:去除前导空格或零(如FMYYYY)

文字字符:可在格式中添加-、/等分隔符(如YYYY-MM-DD)

附加信息:AD/BC(纪元标识)、Q(季度)、WW(年周数)

示例代码

-- 基础格式转换

SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS') FROM dual;

-- 输出:2025-10-16 15:07:25

-- 包含文字和修饰符

SELECT TO_CHAR(SYSDATE, 'FMDAY, MONTH DD, YYYY "at" HH12:MI PM') FROM dual;

-- 输出:THURSDAY, OCTOBER 16, 2025 at 03:07 PM

注意事项

默认格式为DD-MON-YY,但显式指定格式可避免区域设置差异

若需处理时间戳,可使用TO_TIMESTAMP函数

12小时制需搭配AM/PM标识

相关推荐
布莱克60514 小时前
理解索引:从概念到实践
数据库·mysql
我不是疯子是傻子17 小时前
Qt CAN通信周期发送抖动?实测定时器精度校准与时间戳补偿方案
开发语言·数据库·qt
这个DBA有点耶17 小时前
数据库迁移怎么做到“零翻车“:金仓 KDMS/KDTS/KFS 工具链实测
数据库·架构·dba
2501_9378609418 小时前
MySQL联合查询(多表查询)
数据库·mysql
名字还没想好☜18 小时前
Next.js 用 Server Components 直连数据库:去掉 API 层的边界,和三条别踩的安全红线
前端·javascript·数据库·安全·react·next.js
迷迭香yy19 小时前
行业板块轮动因子实战从板块资金到因子建模的本地化Python全流程
数据库·人工智能·python
SelectDB19 小时前
抖音集团 实时数据仓库:Apache Doris / SelectDB 的技术能力与实践
数据库
SelectDB19 小时前
网易 日志与时序数据分析:Apache Doris / SelectDB 的技术能力与实践
数据库
weixin_5394467820 小时前
Navicat Premium 17报缺少ODBC驱动
数据库
哦虎!20 小时前
【数据库】事务
java·数据库·mysql