当前位置: 首页 > news >正文

[Oracle] TO_CHAR()函数

TO_CHAR() 是Oracle中极其重要的转换函数,主要用于将数值、日期或时间戳等数据类型转换为指定格式的字符串

语法格式

TO_CHAR(expression, format, nls_parameters)

参数说明

expression:要转换的表达式(数值、日期或时间戳)
format:指定输出字符串的格式模型(可选)
nls_parameters:指定国家语言支持参数(可选) 

format参数常用格式元素

格式元素说明
9数字位(不显示前导零)
0数字位(显示前导零)
.小数点
D小数点
,千位分隔符
G千位分隔符
$美元货币符号
MI在右侧显示负号
PR将负数用尖括号<>括起来
EEEE科学计数法
YYYY年份数字(4位)
YEAR年份的英文拼写
MM月份数字(01-12)
MONTH月份的全名
DD一月中的第几天(01-31)
DAY星期的全名
Q季度
HH24小时(00-23)
MI分钟(00-59)
SS秒(00-59)
FF毫秒(1-9位)

数值转换字符串示例

SELECT TO_CHAR(0.123) FROM dual;  -- '.123'SELECT TO_CHAR(1234.56) FROM dual;  -- '1234.56'SELECT TO_CHAR(1234.56, '$9,999.99') FROM dual;  -- '$1,234.56'SELECT TO_CHAR(123, '09999') FROM dual;  -- '00123'SELECT TO_CHAR(123456789, '9.999EEEE') FROM dual;  -- '1.235E+08'SELECT TO_CHAR(-1234.56, '9,999.99MI') FROM dual;  -- '1,234.56-'SELECT TO_CHAR(-1234.56, '9,999.99PR') FROM dual;  -- '<1,234.56>'SELECT TO_CHAR(1234.56, '9G999D99', 'NLS_NUMERIC_CHARACTERS='',.''')  -- '1.234,56'
FROM dual;

日期转换字符串示例 

-- 假设当前日期是2025-08-04 11:17:16
SELECT TO_CHAR(SYSDATE,'YYYY') as nowYear FROM dual;  -- '2025'SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD') FROM dual;  -- '2025-08-04'SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS') FROM dual;  -- '2025-08-04 11:17:16'SELECT TO_CHAR(SYSDATE, 'YEAR MONTH DAY') FROM dual;  -- 'TWENTY TWENTY-FIVE 8月  星期一'SELECT TO_CHAR(SYSDATE, 'YYYY"年"Q"季度"') FROM dual;  -- '2025年3季度'SELECT TO_CHAR(SYSDATE, '"今天是"YYYY"年"MM"月"DD"日"') FROM dual;  -- '今天是2025年08月04日'SELECT TO_CHAR(SYSDATE, 'YYYY"年"MM"月"DD"日"', 'NLS_DATE_LANGUAGE=JAPANESE') -- 2025年08月04日
FROM dual;

时间戳转换为字符串示例 

SELECT TO_CHAR(SYSTIMESTAMP, 'YYYY-MM-DD HH24:MI:SS.FF3') FROM dual;  -- '2025-08-04 11:19:44.531'SELECT TO_CHAR(SYSTIMESTAMP, 'YYYY-MM-DD HH24:MI:SS.FF6') FROM dual;  -- '2025-08-04 11:19:44.614245'
http://www.lryc.cn/news/609515.html

相关文章:

  • 安装MySQL教程时可能遇到的问题
  • 【Linux】重生之从零开始学习运维之GTID复制
  • XXE漏洞原理及利用
  • NSS-DAY17 2025SWPU-NSSCTF
  • Chrontel 【CH7103B-B】CH7103B HDMI to YPbPr Converter
  • 行业报告:.games域名正引领游戏娱乐产业营销新风向
  • 力扣 hot100 Day65
  • 嵌入式学习之51单片机——串口(UART)
  • 回归预测 | MATLAB实现BP神经网络多输入单输出回归预测+SHAP可解释分析
  • 分布式光伏气象站:为分散电站装上 “智慧之眼”
  • 零基础掌握 Scrapy 和 Scrapy-Redis:爬虫分布式部署深度解析
  • 分布式版本控制工具Git
  • Spring之【Bean的实例化方式】
  • 电脑忘记开机密码怎么办?【图文详解】5种方法重置/更改/取消/设置开机密码?
  • Java从入门到精通 - 算法、正则、异常
  • 深入浅出 RabbitMQ:简单队列实战指南
  • 【Linux指南】软件安装全解析:从源码到包管理器的进阶之路
  • 小杰数据结构(five day)——知人者智,自知者明。
  • WPF 按钮背景色渐变
  • 飞算 JavaAI:给需求分析装上 “智能大脑“
  • VPS云服务器Linux性能分析与瓶颈解决方案设计
  • 机器学习 决策树案例电信用户流失
  • 豆包新模型+PromptPilot深度评测:提示词工程的智能化突破
  • Chrontel 【CH7104B-BF】CH7104B HDMI to HDTV/VGA Converter
  • SJW-app-1
  • 力扣热题100——双指针
  • Android GPU测试
  • 豹女篇章-人形态技能加攻速
  • 数据离不开哈希
  • 【Linux | 网络】网络层(IP协议、NAT技术和ICMP协议)