Oracle字符函数

–字符函数
SELECT ASCII(‘a’) “a”,ASCII(‘A’) “A” FROM dual;–ASCII(char):该函数用于返回字符串首字符的ASCII码值

DECLARE
v_chr VARCHAR(2);
BEGIN
v_chr:=CHR(56);
dbms_output.put_line(‘ASCII码为56的字符:’||v_chr);
END;–CHR(n):该函数用于将ASCII码转变为字符

SELECT CONCAT(‘Good’,‘Moring’) FROM dual;–CONCAT:该函数用于连接字符串,作用与连接操作符’||'完全相同

DECLARE
v_initcap VARCHAR2(10);
BEGIN
v_initcap:=INITCAP(‘my word’);
dbms_output.put_line(‘首字符大写:’||v_initcap);
END;–INITCAP(char):该函数用于将字符串中每个单词的首字符大写,其它字符小写,单词之间用空格和非字母字符分隔

/INSTR(char1,char2[,n[,m]]):该函数用于取得子串在字符串中的位置,其中数字n为起始搜索位置,m为子串出现次数。
若数字n为负数则从尾部开始搜索,数字m必须为正整数,且n和m的默认值为1
/
SELECT INSTR(‘morning’,‘n’) FROM dual;

DECLARE
v_len INT;
BEGIN
v_len:=LENGTH(‘my word’);
dbms_output.put_line(‘字符串长度:’||v_len);
END;–LENGTH(char):该函数用于返回将字符串的长度(若字符串类型为char则起长度包含所有的后缀空格)

SELECT LOWER(‘SQL introduction’) FROM dual;–LOWER(char):该函数用于将字符串转换为小写格式

/LPAD(char1,n,char2):该函数用于在字符串char1的左端填充字符串char2直至字符串总长度为n,char2默认值为空格。
若char1长度大于n,则该函数返回char1左端的n个字符
/
DECLARE
v_lpad VARCHAR2(10);
BEGIN
v_lpad:=LPAD(‘aaaa’,10,’’);
dbms_output.put_line('在字符串左端添加字符
:’||v_lpad);
END;

DECLARE
v_RPAD VARCHAR2(10);
BEGIN
v_rpad:=RPAD(‘aaaa’,10,’*’);
dbms_output.put_line(‘在右端添加字符:’||v_rpad);
END;

/LTRIM(char1[,set]):该函数用于去掉字符串char1左端所包含的set中的任何字符。Oracle从左端第一个字符开始扫描,
逐一去掉在set中出现的字符,当遇到不是set中的字符时终止,然后返回剩余结果
/
SELECT LTRIM(‘morning’,‘m’),LTRIM(‘morning’,‘or’) FROM dual;

DECLARE
v_nls_initcap NCHAR(10);
BEGIN
v_nls_initcap:=nls_initcap(n’my word’);
dbms_output.put_line(‘首字符大写*:’||v_nls_initcap);
END;–NLS_INITCAP(char,'nls_param):该函数用于将字符串char的首字符大写,其他字符小写

SELECT nls_lower(n’SQL’) FROM dual;–NLS_LOWER(char,'nls_param):该函数用于将字符串转变为小写

DECLARE
v_upper VARCHAR2(10);
BEGIN
v_upper:=nls_upper(‘my word’,‘nls_sort=XGERMAN’);
dbms_output.put_line(‘字符串大写:’||v_upper);
END;–NLS_UPPER(char,'nls_param):该函数用于将字符串转变为大写

/SUBSTR(char,m[,n]):该函数用于取得字符串的子串,数字m是字符开始位置,数字n是子串的长度。
若m为0则从首字符开始,若m为负数则从尾部开始
/
DECLARE
v_subs VARCHAR2(10);
BEGIN
v_subs:=SUBSTR(‘morning’,1,3);
dbms_output.put_line(‘字符串的子串:’||v_subs);
END;

/TRIM(charFROM string):该函数用于从字符串的头部、尾部或两端截断特定字符,
参数char为要截去的字符,string是源的符串
/
DECLARE
v_source VARCHAR2(20):=‘ABCDGHJHJAB’;
v_trim VARCHAR2(20);
BEGIN
v_trim:=TRIM(‘A’ FROM v_source);
dbms_output.put_line(v_trim);
END;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值