学习回顾oracle系统函数(1)

1、求字符串的长度length(string)
length函数求函数字符串的长度。返回一个数值,对应输入字符串的字符个数。
eg:

select LENGTH('TEST') AS length from dual

输出
4

2、获取字符串中的子串substr(string, start,[count])
substr返回”string”中截取的一部分。该命令截取”string”的一个子集,从“start”位置开始,截取”count”个字符。如果不指定”count”,则从”start”开始截取到”string”的尾部。如果count过于大,也是截取到”string”的尾部。
eg:

select substr('wuzhiming', 3, 100) AS name from dual

返回
wuzhiming

3、更替字符串中的子串replace(src, substr, dststr)
replace函数用于将src字符串中所有substr子串替换为dststr。

eg:

select replace('huzhiming', 'hu', 'wu') AS name from dual

结果
wuzhiming

4、删除字符串前后字符串(ltrim和rtrim)
如果字符串中包含前导或尾部空格,按某指定值对列进行查询,很可能返回错误结果。
用法ltrim/rtirm(srcstring, cutstring)
去除字符串srcstring左右对应的字符串cutstring,如果有cutstring则去除cutstirng,否则srcstring不变。
eg:

select ltrim('    abcd', ' ') as xxx from dual

结果
abcd

5、左填充函数lpad(srcstring, n, pad_string)
其中:
srcstring为需要左填充的字符串
n为lpad返回的字符串长度。
pad_string为左填充到string的字符或者字符串,如果没有输入,且n大于srcstring的长度,在srcstring前面填充空格符。
eg:

select lpad('zhiming', 9, 'wu') as xxx from dual

结果
wuzhiming

6、改变字符串的大小写
oracle提供了三个改变字符串大小写的函数:
1)initcap(string)转换每个字的第一个字符为大写。
2)lower(string)转换所有字符为小写。
3)upper(string)转换所有字符为大写。
eg:

select initcap('zhiming is handsome') as xxx from dual

结果
Zhiming Is Handsome

select upper('zhiming is handsome') as xxx from dual

结果
ZHIMING IS HANDSOME

select lower('ZHIMING IS HANDSOME') as xxx from dual

结果
zhiming is handsome

7、值转换函数转换字符串(decode)
decode语法:
decode(expression, value1, return_value1,…,valuen,return_valueN,[defult_returned_value]
eg

select user_roles, decode(user_roles, 1, '管理员', 2, '普通用户', '普通用户') as role from users

当user_roles为1时,role这一列显示为管理员。为2时,显示未普通用户,其他值也显示为普通用户。

7、转换字符串位ASCII值
用法SCAII(srcstring)

8、当前日期和时间(sysdate)
sysdate返回一个当前时间戳
eg:

select sysdate from dual

结果
2017/11/6 17:01:31

9、转换日期未字符串(to_char)
语法:
to_char(date_vale,format)

eg:

select to_char(sysdate, 'yyyy-mm-dd hh24:mi:ss') from dual

结果
2017-11-06 17:10:30

9、转换字符串位日期(to_date)
用法
to_date(string_value, date_format)

eg:

select to_date('11-06-2017 17:15:56', 'MM-DD-YYYY hh24:mi:ss') from dual

结果
11-06-2017 17:15:56的timestamp值

10、将字符串转换成数字(to_number)
to_number是to_char的逆运算

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值