服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Mssql|Oracle|Redis|

服务器之家 - 数据库 - Oracle - PL/SQL 类型格式转换

PL/SQL 类型格式转换

2019-10-27 16:27脚本之家 Oracle

PL/SQL 类型格式转换

TO_NUMBER(char[,'format_model'])字符转换到数字类型

TO_DATE(char[,'format_model'])字符转换到日期类型

格式说明符:要与前边要转换的字符串的格式要相同才能转换(匹配问题:格式和位数)。

TO_CHAR(date[,'format_model'[,nlsparams]])

第二个参数可以省略,不指定格式,按系统默认格式输出。

区分大小写。

使用FM(在格式控制符前添加)符号可以去掉空格或是首位的零。

如果指定了NLSPARAMS,则它控制返回字符串的月和日分量所使用的语言。格式为:

'NLS_DATA_LANGUAGE=language',language指需要的语言。

例:

selectto_char(sysdate,'FMyyyy-mm-dd')fromdual;

格式控制符的类型:

YYYY四位的年

YEAR年的拼写

MM2位数字的月

MONTH月的全名

MON月名的前三个字符

DY星期名的前三个字符

DAY星期名的全称

DD2位的天

时间格式控制符:

HH24:MI:SSAM

HH12:MI:SSPM

通过“”来实现加入特殊字符的格式控制符。

SELECTTO_CHAR(SYSDATE,'FMyyyy"年"mm"月"dd"日"')fromdual;

DDSPTH

~~

DD是格式控制符。

TH是序数词,将日期转换成英文的序数词拼写。

SP是基数词,将日期转换成英文的基数词拼写。

TO_CHAR(NUM[,'format_model'[,nlsparams]])转换数字

将NUMBER类型参数NUM转换成VARCHAR2类型。如果指定FORMAT,它会控制整个转换。

如果没有指定FORMAT,那么结果字符串中将包含和NUM中有效位的个数相同的字符。NLSPARAMS用来指定小数点和千分符及货币符号。它的格式可为:'NLS_NUMERIC_CHARS=''dg''NLS_CURRENCY=''string'''

d和g分别代表小数点和千分符。STRING代表货币符号。

数字格式控制符:

9代表一位数字(替换符。有,数字显示;没有。不什么都显示。)

0代表一位数字(有数字,显示;没有,强制显示0。)

$美圆符号

L本地货币

.小数点

,千分符

B当整数部分为0时,将整数部分填充为空格。例:B999

MI返回带有后继符号而不是前导负号的负数值,正数值将带有后继的空格。999MI

S返回一个前导符号或后继符号,正数为+,负数为-。S9999或9999S

PR使用尖括号返回负数。正数将有前导或后继空格。999PR

D在指定位置返回一个小数点。两侧的9的个数指定了最大的位数。99D9

G在指定位置返回千分符,G可以在FORMAT_model中出现多次。9G999G9

C在指定位置返回ISO货币符号。C可以在FORMAT_model中出现多次。C99

L在指定位置上返回本地货币符号。L99

V返回一个被乘以10的N次方的数值,这里N是V后边9的个数。99V99

EEEE使用科学记数法返回该数值。9.99EEEE

RM使用大写的罗马数字表示返回该数值。RM

rm使用小写的罗马数字表示返回该数值。rm

FM返回不含前导和后继空格的数值。FM99.09

格式控制符位数一定要大于或等于NUMBER的位数,不能小于。

延伸 · 阅读

精彩推荐
  • OracleORACLE常见错误代码的分析与解决

    ORACLE常见错误代码的分析与解决

    (一)在使用ORACLE的过程过,我们会经常遇到一些ORACLE产生的错误,对于初学者而言,这些错误可能有点模糊,而且可 能一时不知怎么去处理产生的这些错误...

    ORACLE教程网4122019-10-21
  • OracleOracle回滚段的概念,用法和规划及问题的解决

    Oracle回滚段的概念,用法和规划及问题的解决

    回滚段管理一直是ORACLE数据库管理的一个难题,本文通过实例介绍ORACLE回滚段的概念, 用法 和规划及问题的解决。 回滚段概述 回滚段用于存放数据修改之...

    Oracle教程网4212019-10-24
  • OraclePL/SQL 日期时间类型函数及运算

    PL/SQL 日期时间类型函数及运算

    PL/SQL 日期时间类型函数及运算...

    脚本之家1772019-10-27
  • Oracleoracle常用sql语句

    oracle常用sql语句

    oracle常用sql语句...

    oracle教程网3312019-10-23
  • OracleAccess2000迁移到Oracle9i要点

    Access2000迁移到Oracle9i要点

    Oracle9i中提供强大的迁移功能,可以从多种数据库向Oracle迁移数据。Oracle新发行的迁移工具提供了从Access2000向Oracle92010迁移的简便易行的解决方案,该方案...

    脚本之家3902019-10-21
  • OracleOracle数据库系统使用经验六则

    Oracle数据库系统使用经验六则

    Oracle 数据库系统 使用经验六则。 1.having子句的用法 having子句对groupby子句所确定的行组进行控制,having子句条件中只允许涉及常量,聚组函数或groupby子句中的...

    Oracle教程网2752019-10-24
  • OracleOracle PL/SQL语言入门基础

    Oracle PL/SQL语言入门基础

    PL/SQL是ORACLE对标准数据库语言的扩展,ORACLE公司已经将PL/SQL整合到ORACLE服务器和其他工具中了,近几年中更多的开发人员和DBA开始使用PL/SQL,本文将讲述...

    Oracle教程网4692019-10-26
  • Oracle如何确定Oracle数据库表重复的记录

    如何确定Oracle数据库表重复的记录

    作为一个 Oracle 数据库开发者或者DBA,在实际工作中经常会遇到这样的问题:试图对库表中的某一列或几列创建唯一索引时,系统提示ORA-01452:不能创建唯...

    Oracle教程网1612019-10-25
北京塞车全天计划精准版 三肖三码准100期 股票推荐买入软件 甘肃快3开奖视频 22选5开奖 大众麻将四人麻将免费 北京赛车pk合法吗 甘肃11选5前3直遗漏 至尊棋牌 湖北快三跨度分布图 股票投资咨询有限公司 广东36选7中奖规则图片 捕鱼大富翁斗鱼版官网 斗牛棋牌规则讲解 体彩山东十一选五 宏悦投资 重庆快乐十分钟走势图下载