数字格式控制符: 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
DECOMPOSE(string) 返回一个Unicode字符串。它是string的规范分解。string可以是CHAR、VARCHAR2、 NCHAR、NVARCHAR2、CLOB或NCLOB类型。 FROM_TZ(timestamp,timezone) 返回一个TIMESTAMP WITH TIMEZONE 类型值。它将TIMESTAMP(没有时区信息)和提供的TIMEZONE组合在一起。 HEXTORAW(string) 将由STRING表示的二进制数值转换为一个RAW数值。STRING应该包含十六进制值。STRING中的每两个字符表示结果RAW中的一个字节。HEXTORAW和RAWTOHEX互为反函数。 NUMTODSINTERVAL(x,unit) 将X转换为INTERVAL DAY TO SECOND 值,X应该是一个数字。UNIT是一个字符字符串(可以是CHAR、VARCHAR2、NCHAR或NVARCHAR2),且是 DAY 、 HOUR 、 MINUTE 、 SECOND 之一。unit是不区分大小写的,返回值的缺省精度为9。 NUMTOYMINTERVAL(x,unit) 将X转换成INTERVAL YEAR TO MONTH 值,X应该是一个数字。UNIT是一个字符字符串(可以是CHAR、VARCHAR2、NCHAR或NVARCHAR2),且是 YEAR 或 MONTH 之一。unit是不区分大小写的,返回值的缺省精度为9。 REFTOHEX(refvalue) 返回一REF refvalue的十六进制表示。 RAWTOHEX(rawvalue) 将RAW类型值rawvalue转换为一个十六进制表示的字符串。rawvalue中的每个字节转换为一个双字符的字符串。 RAWTONHEX(rawvalue)
将RAW类型值rawvalue转换为一个十六进制表示的字符串。rawvalue中的每个字节转换为一个双字符的字符串。 RAWTONHEX返回值是NVARCHAR2类型而不是VARCHAR2类型。 ROWIDTOCHAR(rowid)函数,将ROWID类型值转换成字符串。与CHARTOROWID互为反函数。 ROWIDYONCHAR(rowid) 与ROWIDTOCHAR类似,返回类型是NCHAR,而不是CHAR。 TO_CLOB(string) 将string转换为CLOB。string可以是文字或另一个LOB列。如果参数包含NCHAR数据,它被转换为数据库字符集 TO_DSINTERVAL(string[,nlsparams]) 将string(可以是CHAR、VARCHAR2、NCHAR、NVARCHAR2)转换为 INTERVAL DAY TO SECOND 类型。如果 选定nlsparams,则nlsparams只能包含小数点和千分位字符的NLS_NUMERIC_CHARARCTERS表示。 TO_LOB(long_column) 将long_column转换成LOB。这个函数用于将LONG和LONG RAW分别转换为CLOB和LOB。 TO_MULTI_BYTE(string) 返回将所有单字节字符替换为等价的多字节字符的STRING。该函数仅当数据库字符集同时包含单字节和多字节字符时才使用。否则,STRING不会进行任何处理而被返回,与TO_SINGLE_BYTE 互为反函数。 TO_NCHAR 和TO_CHAR相似,结果是属于国家字符集而不是数据库字符集。 TO_NCLOB(string) 将STRING转换为NCLOB。STRING可以是文字或另一LOB列。 TO_SINGLE_BYTE(string) 返回将所有双字节字符替换为等价的单字节字符的STRING。。该函数仅当数据库字符集同时包含单字节和多字节字符时才使用。否则,STRING不会进行任何处理而被返回,与TO_MULTI_BYTE 互为反函数。 TO_TIMESTAMP(string[,format[,nlsparams]]) 将其参数CHAR或VARCHAR2类型string转换成TIMESTAMP类型。 TO_TIMESTAMP_TZ(string[,format[,nlsparams]]) 将其参数CHAR或VARCHAR2类型string转换成 TIMESTAMP WITH TIMEZONE 类型。 TO_YMINTERVAL(string) 将string(可以是CHAR、VARCHAR2、NCHAR、NVARCHAR2)转换为INTERVAL YEAR TO MONTH 类型。 TO_YMINTERVAL与TO_DSINTERVAL相似,除了它不能使用NLS参数作为参数并返回YEAR TO MONTH时间间隔而不DAY TO SECOND 时间间隔。 to_label(x[,y])函数,按照格式Y将字符串X转换成MLSLABEL类型的一个值,若默认格式为Y,则按照默认格式进 行转换。 dump(w,[x[,y[,z]]])函数,用来返回字符串EXPR的数据类型,内部的存储位置和字符长度。 dump(expr,return_datatype,start_position,length). return_datatype是指定返回返回位置用什么方式表示,可以为8、10、16、17,分别表示 用八进制、十进制、十六进制和字符类型。 例: 0select dump(last_name,8,3,2) ,dump(last_name,10,3,2) , dump(last_name,16,3,2) ,dump(last_name,17,3,2) from employees where lower(last_name) = smith . greatest(x,y,...)函数,返回参数列表中的最大值。其参数的类型是由第一个参数决定的,可以为数值型、日期型 、和字符型等,后面的参数被强制转换成此种数据类型。 进行字符串的比较时,其大小由字符在字符集中的数值决定,在字符集中的数值大,则此字 符就大,对于字符串,此函数返回VARCHAR2类型。 least(x,y,......)函数,返回列表参数中的最小值。 与上两个函数类似的有: greatest_lb(x,y,....)函数和least_lb(x,y,....)函数,分别求出列表中的标签的最大下限和最小上限,其参数必须为 MLSLABEL 类型,返回值为 RAW MLSLABEL类型。 user 函数,返回当前用户的数据库用户名。 uid函数,返回唯一标识当前用户的整数。