| 函数名 | 描述 |
|---|---|
| CHARTOROWID(char) | 将 char 或 varchar2 转换为 ROWID 类型 |
| CONVERT(string, dest_char_set [,source_char_set]) | 在字符集之间转换 |
| HEXTORAW(str) | 将十六进制字符串转为对应的 RAW 值 |
| RAWTOHEX(row) | 将 RAW 值转换为十六进制字符串 |
| ROWIDTOCHAR(rowid) | rowid 转为 char 类型 |
| TO_CHAR(d [,fmt [,'nlsparams']) | 日期转为字符串 |
| TO_CHAR(n [,fnt [,'nlsparams']) | 数字转为字符串 |
| TO_DATE(str [,fnt [,'nlsparams']) | 字符串转为日期 TO_DATE('20010101','YYYYMMDD') TO_DATE('2022-12-15 13:45:30', 'YYYY-MM-DD HH24:MI:SS') |
| TO_LOB(long_column) | 转换 LONG / LONG RAW 至 CLOB / BLOB / NCLOB
只能用于 INSERT 语句的子查询 |
| TO_MILTI_BYTE(string) | 转换单字节字符为多字节等同物 |
| TO_NUMBER(str [,fnt [,'nlsparams']) | 字符串转数字 |
| TO_SINGLE_BYTE(string) | 转换多字节字符为单字节等同物 |
| TRANSLATE USING(text USING { CHAR_CS | NCHAR_CS }) | 转换文本为数据库字符集/国际字符集 |
| 代码(字符型) | 时区 |
|---|---|
| AST | 大西洋标准时间 |
| ADT | 大西洋白天时间 |
| BST | 白令海标准时间 |
| BDT | 白令海白天时间 |
| CST | 地中海标准时间 |
| CDT | 地中海白天时间 |
| EST | 东部标准时间 |
| EDT | 东部白天时间 |
| GMT | 格林威治标准时间 |
| HST | 阿拉斯加-夏威夷标准时间 |
| HDT | 阿拉斯加-夏威夷白天时间 |
| MST | 山区标准时间 |
| MDT | 山区白天时间 |
| NST | 纪芬兰标准时间 |
| PST | 太平洋标准时间 |
| PDT | 太平洋白天时间 |
| YSTS | 育空河标准时间 |
| YDT | 育空河白天时间 |
| ROUND(d [,fmt]) |
| 参数 | 描述 |
|---|---|
| d | 源日期 |
| fmt | 指定的时间单位 |
| 参数 | 描述 |
|---|---|
| -/,.;: | 原样输出 |
| 'text' | 直接输出的字符 |
| AD / A.D. / BC / B.C. | 公元/公元前 |
| AM / A.M. / PM / P.M. | 上午或下午 AM/PM |
| CC | 世纪, 如 20 代表 1900-1999 |
| SCC | 同 CC,但公元前为负数 |
| D | 周几, 1-7 |
| DAY | 周的名称, 英文 |
| DD | 日数 |
| DDD | 在一年中的第几天 |
| DY | 周的缩写 |
| HH | 天的小时, 1-12 |
| HH12 | 同 HH |
| HH24 | 天的小时, 0-23 |
| IW | 周数, 1-53 |
| IYYY | 4 数字年份 |
| IYY | 年的最后 3 位数 |
| IY | 年的最后 2 位数 |
| I | 年的最后 1 位数 |
| J | 儒略历天, 第 1 天为公元前 4712 年 1 月 1 日 |
| MI | 分钟 |
| MON | 月份缩写, 3 字母 |
| MONTH | 月份单词全拼 |
| Q | 季度, 1-4 |
| RM | 罗马数字的月份 |
| RR | 年的最后 2 位数(TO_CHAR) |
| RRRR | 年的 4 位数(TO_CHAR) |
| SS | 秒 |
| SSSSS | 从千夜开始的秒数 |
| WW | 一年中的周 |
| W | 月中的周, 1-7 日为第一周 |
| Y,YYY | 年的 4 位数,有分节号 |
| YEAR | 年的单词 |
| SYEAR | 同 YEAR, 公元前则为负 |
| YYYY | 年的 4 位数字 |
| SYYYY | 年的 4 位数字, 公元前有负号 |
| YYY | 年的最后 3 位数字 |
| YY | 年的最后 2 位数字 |
| Y | 年的最后 1 位数字 |
| TO_CHAR(d [,fmt [,'nlsparams']) |
| TO_CHAR(n [,fmt2 [,'nlsparams']) |
| 参数 | 描述 |
|---|---|
| d | 日期值 |
| n | 数字值 |
| fmt | 时间格式字符串 |
| fmt2 | 数字格式字符串 |
| 'nlsparams' | NLS 语言名 |
SELECT TO_CHAR(SYSDATE,'dd-Mon-yyyy','NLS_DATE_LANGUAGE=FRANCH') FROM DUAL = '21-Mai-2000'
| 字符 | 描述 |
|---|---|
| 9 | 数字 |
| 0 | 数字, 无则显示 0 |
| $ | 在数字前显示 $ 符号 |
| , | 逗号 |
| . | 小数点位置 |
| B | 强制将 0 显示为空白 |
| M1 | 在末尾使用, 使负号显示的后面 |
| S | 数的符号, + 或 - |
| PR | 前面空出位置, 正数显示空格, 负数显示尖括号 |
| D | 标记小数点位置 |
| G | 分节符 |
| C | 货币指示符(美元:USD) |
| L | 货币符号(美元:$) |
| V | 显示缩放值,
在 V 右边显示的数字表示显示数字之前小数点的右边将有多少位被移动 |
| EEEE | 科学计数法显示数字 |
| RN/rn | 罗马数字(1-3999 的整数) |
| DATE | 假定数字为儒略历日期,而且显示为 mm/dd/yy 格式 |