oracle 字符、数值、日期处理

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

字符及处理方法

1.固定长度字符串:

char(n) 空格补足,效率高,最大2000.

2.变长:

varchar(n) 最大4000

varchar2(n) 最大4000 向下兼容

3.在变量声明中的字符类型:

char(n) 大小:32767

varchar(n),varchar2(n) 为:32767

4.字符型处理:

4.1 向左补全字符串lpad(string,padded_length,[pad_string]) 函数

4.2 向右补全字符串rpad(string,padded_length,[pad_string]) 函数

4.3 小写返回lower()

4.4 大写返回upper()

4.5 单词首字符大写initcap()

4.6 返回字符长度length()

4.7 截取字符串substr(string,start_index,length) 第一个字符位置为1

4.8 获得字符串出现的位置instr(string ,sub_string, [,start_index] [,times])

4.9 删除字符串左侧空格ltrim()

4.10 删除字符串右侧空格rtrim()

4.11 删除字符串两侧空格trim()

4.12 串联字符串concat()

select concat(ename,'_emp') from emp;

串联方法2:select ename||'_emp'||deptno from emp;

-----------||字符串连接符

4.13 反转字符串reverse()

数值及处理方法

一、数值:

number [(precision [,scale]]

注:precision 为精度,scale 为指定小数后的位数。根据四舍五入取精度。

对12345.977 精度为8,当精确到小数点后2位为12345.98 精度为7;而精确到小数点前2位的话为12300,精度为3。对于0.000995 精度为3,精确到小数点后5位为0.00100,此时精度为3。

二、数值处理:

2.1 返回数值的绝对值abs()

2.2 返回数字的“四舍五入”round()

2.3 向上取整ceil()

2.4 向下取整floor()

2.5 取模mod(被除数,除数)

2.6 返回数字的正负性sign()

注:小于0时返回-1,大于0时返回1,等于0时返回0.

2.7 返回数字的平方根sqrt()

2.8 乘方power(底数,指数)

2.9 截取数字trunc(原数值[,小数位数])

2.10 将ASCII 码转换为字符chr()

如:select chr(65) character from dual;

CHARACTER

---------

A

2.11 格式化数值to_char(原数值,格式)

格式可以为:0、9、,、FM、$、L、C。

(1)“0”

select to_char(12.78,'000.000') result from dual;

RESULT

--------

012.780

(2)“9”

* select to_char(12.78,'999.999') result from dual;

RESULT

--------

12.780

* select to_char(0.78,'999.999') result from dual;

RESULT

--------

.780

* select to_char(0.78,'990.999') result from dual;

RESULT

--------

0.780

(3)“,”

select to_char(4560000,'99,999,990.00') result from dual;

RESULT

--------------

4,560,000.00

(4)“FM”——Format Mask

select to_char(12.78,'999.999') result ,to_char(12.78,'FM999.999') fm_result from dual;

RESULT FM_RESULT

-------- ---------

12.780 12.78

(5)“$”

* select to_char(12.78,'$999.999') result from dual;

RESULT

---------

$12.780

* select to_char(12.78,'999.9$99') result from dual;

RESULT

---------

$12.780

但与FM一起时必须FM在$的开头:

* select to_char(12.78,'FM$999.999') result from dual;

RESULT

---------

$12.78

(6)“L”

select to_char(12.78,'FML999.999') result from dual;

RESULT

------------------

¥12.78

(7)“C”

select to_char(12.78,'FM999.999C') result from dual;

RESULT

---------------

12.78CNY

相关文档
最新文档