最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

Oracle基础教程:单行函数—字符类型函数

来源:动视网 责编:小采 时间:2020-11-09 11:37:51
文档

Oracle基础教程:单行函数—字符类型函数

Oracle基础教程:单行函数—字符类型函数:REPLACE(源字符串,OLD字符串,NEW字符串)从源字符串中找到搜索的old字符串,替换成new字符串idlegt; select replace( 字符型 ASCII CHR LOWER UPPER INITCAP CONCAT SUBSTR LENGTH INSTR TRIM dump lpad rpad
推荐度:
导读Oracle基础教程:单行函数—字符类型函数:REPLACE(源字符串,OLD字符串,NEW字符串)从源字符串中找到搜索的old字符串,替换成new字符串idlegt; select replace( 字符型 ASCII CHR LOWER UPPER INITCAP CONCAT SUBSTR LENGTH INSTR TRIM dump lpad rpad


REPLACE(源字符串,OLD字符串,NEW字符串)从源字符串中找到搜索的old字符串,替换成new字符串idlegt; select replace(

字符型
ASCII
CHR
LOWER
UPPER
INITCAP
CONCAT
SUBSTR
LENGTH
INSTR
TRIM
dump
lpad
rpad
REPLACE

ASCII('字符')
返回字符的ASCII码值
idle> select ASCII('a') from dual;
ASCII('A')
----------
97

idle> select ASCII('A') from dual;

ASCII('A')
----------
65

idle>

CHR('n')
返回n的字符值 n是ASCII码数
idle> select chr(65) from dual;

C
-
A

idle> select chr(39) from dual;

C
-
'

idle>

但是求单引号的ASCII码写法很特殊 两个单引带表一个单引

idle> select ASCII(''') from dual;
ERROR:
ORA-01756: quoted string not properly terminated


idle> select ASCII('''') from dual;

ASCII('''')
-----------
39

idle>

LOWER(列名|表达式)
小写转换
idle> select lower('ABC') from dual;

LOW
---
abc

idle>
dual 为虚表,当一个语句不需要从表中获取数据时,但又要维持SQL语法,Oracle才提供了虚表来解决这个问题


UPPER(列名|表达式)
大写转换

idle> select upper('abc') from dual;

UPP
---
ABC

idle>

INITCAP(列名|表达式)
每个词的词头大写 其他小写

idle> select initcap('abC dEf XYZ') from dual;

INITCAP('AB
-----------
Abc Def Xyz

idle>

CONCAT(列名|表达式,列名|表达式)
将第一个字符串和第二个字符串连接

idle> select concat('abc','xyz') from dual;

CONCAT
------
abcxyz

不太常用,因为我们可以用 || 连接
idle> select 'abc'||'xyz' from dual;

'ABC'|
------
abcxyz

idle>

SUBSTR(列名|表达式,m,[n])
返回指定子串,该子串是从第m个字符开始,其长度为n,不指定n值则从m到最后

idle> select substr('abcdefxyz',4,3) from dual;

SUB
---
def

idle> select substr('abcdefxyz',4) from dual;

SUBSTR
------
defxyz

idle>


LENGTH(列名|表达式)
返回字符串的长度
idle> select length('abcdefxyz') from dual;

LENGTH('ABCDEFXYZ')
-------------------
9

idle>

INSTR (列名|表达式,'字符串',[m],[n])
从表达式或列中搜索给定的字符串的所处位置,m代表从第几个开始搜,n代表第几次出现. m和n默认都是1

idle> select INSTR('abcdddxyz','d') from dual;

INSTR('ABCDDDXYZ','D')
----------------------
4

idle>
idle> select INSTR('abcdddxyz','d',5) from dual;

INSTR('ABCDDDXYZ','D',5)
------------------------
5

idle> select INSTR('abcdddxyz','d',5,2) from dual;

INSTR('ABCDDDXYZ','D',5,2)
--------------------------
6

idle>


TRIM([leading|]trailing|both 要去掉的字符 FROM 源字符串)
从源字符串中去掉指定的字符 可以用leading tailing来修饰去掉的字符串是在开头或结尾,默认是两者都 默认截取的是空格

idle> select trim('a' from 'aaabcdeaaafxyzaaa') from dual;

TRIM('A'FRO
-----------
bcdeaaafxyz

idle> select trim(leading 'a' from 'aaabcdeaaafxyzaaa') from dual;

TRIM(LEADING'A
--------------
bcdeaaafxyzaaa

idle> select trim(trailing 'a' from 'aaabcdeaaafxyzaaa') from dual;

TRIM(TRAILING'
--------------
aaabcdeaaafxyz

idle>


左补齐lpad 右补齐rpad
将不足20个字符的位置用指定符号填充.
idle> select lpad(ename,20,'-') ,rpad(ename,20,'-') from emp where ename like 'S%';

LPAD(ENAME,20,'-') RPAD(ENAME,20,'-')
-------------------- --------------------
---------------SMITH SMITH---------------
---------------SCOTT SCOTT---------------
idle>

文档

Oracle基础教程:单行函数—字符类型函数

Oracle基础教程:单行函数—字符类型函数:REPLACE(源字符串,OLD字符串,NEW字符串)从源字符串中找到搜索的old字符串,替换成new字符串idlegt; select replace( 字符型 ASCII CHR LOWER UPPER INITCAP CONCAT SUBSTR LENGTH INSTR TRIM dump lpad rpad
推荐度:
标签: 教程 类型 函数
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top