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指需要的语言。
  例:
  select to_char(sysdate,'FMyyyy-mm-dd') from dual;
  格式控制符的类型:
    YYYY 四位的年
    YEAR 年的拼写      
    MM  2位数字的月
    MONTH 月的全名
    MON 月名的前三个字符
    DY 星期名的前三个字符
    DAY 星期名的全称
    DD 2位的天 
  时间格式控制符:
    HH24:MI:SS AM
    HH12:MI:SS PM
  通过“”来实现加入特殊字符的格式控制符。
  SELECT TO_CHAR(SYSDATE,'FMyyyy"年"mm"月"dd"日"') from dual;
  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的位数,不能小于。

(0)

相关推荐

  • SQL SERVER 日期格式转换详解

    SQL SERVER 2000用sql语句如何获得当前系统时间就是用GETDATE(); Sql中的getDate()2008年01月08日 星期二 14:59Sql Server 中一个非常强大的日期格式化函数 复制代码 代码如下: Select CONVERT(varchar(100), GETDATE(), 0);-- 05 16 2008 10:57AMSelect CONVERT(varchar(100), GETDATE(), 1);-- 05/16/08Select CONVERT

  • 分享Sql日期时间格式转换

    Sql server2000中使用convert来取得datetime数据类型样式(全) 日期数据格式的处理,两个示例: CONVERT(varchar(16), 时间一, 20) 结果:2007-02-01 08:02/*时间一般为getdate()函数或数据表里的字段*/ CONVERT(varchar(10), 时间一, 23) 结果:2007-02-01 /*varchar(10)表示日期输出的格式,如果不够长会发生截取*/ 语句及查询结果: 复制代码 代码如下: Select CONV

  • PL/SQL 类型格式转换

    TO_NUMBER(char[,'format_model'])  字符转换到数字类型 TO_DATE(char[,'format_model'])  字符转换到日期类型   格式说明符:要与前边要转换的字符串的格式要相同才能转换(匹配问题:格式和位数). TO_CHAR(date[,'format_model'[,nlsparams]])   第二个参数可以省略,不指定格式,按系统默认格式输出.   区分大小写.   使用FM(在格式控制符前添加)符号可以去掉空格或是首位的零.   如果指定了

  • SQL Server格式转换函数Cast、Convert介绍

    CAST.CONVERT都可以执行数据类型转换.在大部分情况下,两者执行同样的功能,不同的是CONVERT还提供一些特别的日期格式转换,而CAST没有这个功能. CAST是ANSI兼容的,推荐使用CONVERT. 一.语法 CONVERT (data_type [ ( length ) ] , expression [ , style ]) CAST (expression AS data_type [ (length ) ]) data_type:目标系统所提供的数据类型,包括 bigint

  • 把字符串转换成数据库SQL语句格式

    复制代码 代码如下: '把字符串转换成数据库SQL语句格式 '------------------------------------------------- Function AllStr2Database(str,strType)     Dim strTemp:strTemp=str     Select Case strType         Case ""         Case "num"             strTemp = Clng(st

  • SQL中简单的格式转换方式

    先给大家介绍下SQL中简单的格式转换 1.to_number() select to_number('2015') from dual ---2015 2.to_char() --不需要转换格式 select to_char(2015) from dual ---'2015' --需要转换格式 select to_char(1, '$000') from dual --- $001 select to_char(2212, '$999999') from dual ---$2212 3.to_d

  • PL/SQL数据类型及操作符

    标量(scalar)数据类型 标量(scalar)数据类型没有内部组件,他们大致可分为以下四类: . number . character . date/time . boolean 表1显示了数字数据类型:表2显示了字符数据类型:表3显示了日期和布尔数据类型. 表1 Scalar Types:Numeric Datatype Range Subtypes description BINARY_INTEGER -214748-2147483647 NATURALNATURALNPOSITIVEP

  • Oracle 10G:PL/SQL正规表达式(正则表达式)手册

    Oracle 的正规表达式的实施是以各种 SQL 函数和一个 WHERE 子句操作符的形式出现的.如果您不熟悉正规表达式,那么这篇文章可以让您了解一下这种新的极其强大然而表面上有点神秘的功能.已经对正规表达式很熟悉的读者可以了解如何在 Oracle SQL 语言的环境中应用这种功能. 什么是正规表达式? 正规表达式由一个或多个字符型文字和/或元字符组成.在最简单的格式下,正规表达式仅由字符文字组成,如正规表达式 cat.它被读作字母 c,接着是字母 a 和 t,这种模式匹配 cat.locati

  • 利用PL/SQL从Oracle数据库导出和导入数据

    本文实例为大家分享了使用PL/SQL从Oracle数据库导出和导入数据的方法,供大家参考,具体内容如下 1.导出数据: 方式一:工具->导出用户对象->导出.sql文件 注:这种方式导出的是建表语句和存储过程语句 方式二:工具->导出表 注: 这里是导出表的结构和数据 第一种方式导出.dmp格式的文件,.dmp是二进制文件,可跨平台,还能包含权限,效率不错,用的最为广泛. 第二种方式导出.sql格式的文件,可用文本编辑器查看,通用性比较好,效率不如第一种,适合小数据量导入导出.尤其注意的

  • oracle复习笔记之PL/SQL程序所要了解的知识点

    复习内容: PL/SQL的基本语法.记录类型.流程控制.游标的使用. 异常处理机制.存储函数/存储过程.触发器. 为方便大家跟着我的笔记练习,为此提供数据库表文件给大家下载:点我下载 为了要有输出的结果,在写PL/SQL程序前都在先运行这一句: set serveroutput on 结构: declare --声明变量.类型.游标 begin --程序的执行部分(类似于java里的main()方法) exception --针对begin块中出现的异常,提供处理的机制 --when...the

  • PL/SQL DEVELOPER 使用的一些技巧

    1,登录后默认自动选中My Objects 默认情况下,PLSQL Developer登录后,Brower里会选择All objects,如果你登录的用户是dba,要展开tables目录,正常情况都需要Wait几秒钟,而选择My Objects后响应速率则是以毫秒计算的. Tools菜单 --> Object Brower Filters,会打开Brower Folders的定单窗口,把"My Objects"设为默认即可. Tools菜单--> Object Brower

  • 如何使用Oracle PL/SQL 实现发送电子邮件功能(UTL_MAIL)

    大家好,我是只谈技术不剪发的 Tony 老师. 我们在开发 Oracle 数据库程序时,如果想要通过 PL/SQL 存储过程实现发送邮件的功能,大概可以使用以下三种方法: 利用 UTL_TCP程序包基于 TCP 协议发送邮件.这种方法比较原始,需要用户编写基础交换代码. 利用 UTL_SMTP 程序包基于 SMTP 协议发送邮件.这种方法比编码 TCP 操作简单很多,支持发送电子邮件的各种操作,因此使用非常广泛. 利用 UTL_MAIL 程序包发送邮件.这种方法最简单,支持常用的邮件功能,不需要

随机推荐