🔹 Oracle 中的 TO_DATE
和 TO_CHAR
函数
在 Oracle 数据库中,TO_DATE
和 TO_CHAR
主要用于日期和字符串之间的转换:
TO_DATE
:将字符串转换为DATE
类型。TO_CHAR
:将DATE
或NUMBER
类型转换为字符串。
1️⃣ TO_DATE
函数
📌 作用
TO_DATE
用于将字符串转换为日期,支持指定格式。
📌 语法
TO_DATE('日期字符串', '格式模型')
📌 示例
SELECT TO_DATE('2025-03-30', 'YYYY-MM-DD') FROM dual;
结果(Oracle 默认日期格式显示):
30-MAR-25
📌 更多示例
输入字符串 | 格式 | 解析结果 |
---|---|---|
'2025-03-30' | 'YYYY-MM-DD' | 30-MAR-25 |
'30/03/2025' | 'DD/MM/YYYY' | 30-MAR-25 |
'03-30-25' | 'MM-DD-YY' | 30-MAR-25 |
'2025 March 30' | 'YYYY Month DD' | 30-MAR-25 |
2️⃣ TO_CHAR
函数
📌 作用
TO_CHAR
用于将日期或数值转换为字符串,常用于格式化日期输出。
📌 语法
TO_CHAR(日期或数值, '格式模型')
📌 示例
SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS') FROM dual;
结果(假设当前时间为 2025 年 3 月 30 日 14:45:10):
2025-03-30 14:45:10
📌 更多示例
格式 | 说明 | 结果(假设 SYSDATE 为 2025 年 3 月 30 日) |
---|---|---|
'YYYY-MM-DD' | 年-月-日 | 2025-03-30 |
'DD Month YYYY' | 完整月份 | 30 March 2025 |
'DY, HH:MI AM' | 星期缩写 + 12 小时制时间 | SUN, 02:45 PM |
'HH24:MI:SS' | 24 小时制时间 | 14:45:10 |
3️⃣ TO_DATE
和 TO_CHAR
结合使用
通常,我们会先用 TO_DATE
解析字符串,然后用 TO_CHAR
格式化日期。
📌 示例
SELECT TO_CHAR(TO_DATE('2025-03-30', 'YYYY-MM-DD'), 'Month DD, YYYY') FROM dual;
结果:
March 30, 2025
✅ 总结
函数 | 作用 | 示例 |
---|---|---|
TO_DATE | 字符串 ➝ 日期 | TO_DATE('2025-03-30', 'YYYY-MM-DD') |
TO_CHAR | 日期 ➝ 字符串 | TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS') |
💡 用 TO_DATE
解析输入日期,用 TO_CHAR
格式化输出日期! 🚀