Oracle基础函数
1. ASCII
返回指定字符对应的十进制数;
1 | SQL> select ascii('A') A,ascii('a') a,ascii('0')zero,ascii(' ') space from dual;--返回: A:65 a:97 zero:48 space:32 |
2. CHR
根据十进制数返回对应的字符
1 | SQL> select chr(54740) zhao,chr(65) chr65 from dual;--返回: zhao:赵 chr65:65 |
3. CONCAT
连接两个字符串
1 | SQL> select concat('010-','88888888')||'转23' 电话 from dual;--返回: 010-88888888转23 |
4. INITCAP
返回字符串并将字符串的第一个字母变为大写
1 | SQL> select initcap('smith') upp from dual;--返回: upp:Smith |
5. INSTR(c1,c2.I,J)
在一个字符串中搜索指定的字符,返回发现指定字符的位置
C1: 被搜索的字符串
C2: 希望搜索的字符串
I: 搜索的开始位置,默认为1
J: 出现的位置,默认为1
1 | SQL> select instr('oracle traning','ra',1,2) from dual; |
6. LENGTH
返回字符串的长度
1 | SQL> select length('百度一下'),length('9999.99') from dual;-- 返回: 4 7 |
7. LOWER
返回字符串,并将所有的字符小写
1 | SQL> select lower('AaBbCcDd') from dual;--返回: aabbccdd |
8. UPPER
返回字符串,并将所有字符大写
1 | SQL> select upper(AaBbCcDd) from dual;-- 返回: AABBCCDD |
9. RPAD和LPAD
RPAD:在列的右边粘贴字符
LPAD:在列的左边粘贴字符
gao表示要粘贴的字符,10表示有10个字符的位置,表示不够用来代替
1 | SQL> select lpad(rpad('gao',10,'*'),17,'-')from dual; |
10. LTRIM和RTRIM
LTRIM: 删除左边出现的字符串
RTRIM: 删除右边出现的字符串
1 | SQL> select ltrim(rtrim(' 删除右边出,现的字符串,salfibcal ',' '),',') from dual; |
11. SUBSTR(String,start,count)
截取字符串,从start开始,取count个,从第三个开始取
1 | SQL> select substr('123456789',3,5) from dual; |
12. REPLACE(‘string’,’s1’,’s2’)
替换字符串
string: 字符串
s1: 被替换的字符串
s2: 要替换的字符串
1 | SQL> select replace('当时就觉得是客户跟进当时就觉得','就觉得','1') from dual; |
13. SOUDEX
返回一个与给定字符串读音相同的字符串
1 | SQL> select column Name from tableName where soundex(columnName) = soundex('字符串'); |
14. ABS
返回指定值的绝对值
1 | SQL> select abs(-100) from dual; |
15. CEIL
返回大于或等于给出数字的最小整数
1 | SQL> select ceil(3.1415927) from dual; |
17. FLOOR
对给定的数字取整数
1 | SQL> select floor(2345.67) from dual; |
18. ROUND和TRUNC
按照指定的精度进行取舍
1 | SQL> select round(55.5),round(-55.4),trunc(55.5),trunc(-55.5) from dual;--返回: 56,-55,55,-55 |
19. ADD_MONTHS
增加或减去月份
1 | SQL> select to_char(add_months(to_date('199912','yyyymm'),-2),'yyyymm') from dual; |
20. LAST_DAY
返回日期的最后一天
1 | SQL> select last_day(sysdate) from dual; |
21. USER
返回当前用户的名字
1 | SQL> select user from dual; |
22. MONTHS_BETWEEN(date2,date1)
给出date2-date1的月份
1 | SQL> select months_between('19-12月-1999','19-3月-1999') from dual; |
23. NEXT_DAY
给出日期date和星期X后计算下一个星期X的日期
1 | SQL> select next_day('18-5月-2001','星期五') from dual; |
- 标题: Oracle基础函数
- 作者: zlong.w
- 创建于 : 2020-09-20 17:55:19
- 更新于 : 2023-09-27 17:58:22
- 链接: https://zlonx.cn/2020/09/20/Oracle基础函数/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。