ORACLE字符型函数(一)

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

ASCII(x1)
【功能】:返回字符表达式最左端字符的ASCII 码值。
【参数】:x1,字符表达式
【返回】:数值型
【示例】
SQL> select ascii('A') A,ascii('a') a,ascii(' ') space,ascii('示') hz from dual;
 
A         A          SPACE        hz
--------- --------- --------- ---------
65        97         32         51902
 
 
【说明】在ASCII()函数中,纯数字的字符串可不用‘’括起来,但含其它字符的字符串必须用‘’括起来使用,否则会出错。
  如果最左端是汉字,只取汉字最左半边字符的ASCII 码
 
【互反函数】:chr()

?

1

CHR(n1) 【功能】:将ASCII 码转换为字符。 【参数】:n1,为0 ~ 255,整数 【返回】:字符型 【示例】 SQL> select chr(54740) zhao,chr(65) chr65 from dual; ZH C -- - 赵 A 【互反函数】:ASCII

?

1

CONCAT(c1,c2) 【功能】连接两个字符串 【参数】c1,c2 字符型表达式 【返回】字符型 同:c1||c2 【示例】 select concat('010-','88888888')||'转23' 高乾竞电话 from dual; 高乾竞电话 ---------------- 010-88888888转23

?

1

INITCAP(c1) 【功能】返回字符串并将字符串的第一个字母变为大写,其它字母小写; 【参数】c1字符型表达式 【返回】字符型 【示例】 SQL> select initcap('smith abc aBC') upp from dual; UPP ----- Smith Abc Abc

?

1

LOWER(c1) 【功能】:将字符串全部转为小写 【参数】:c1,字符表达式 【返回】:字符型 【示例】 SQL> select lower('AaBbCcDd')AaBbCcDd from dual; AABBCCDD -------- aabbccdd 【同类】UPPER()将字符串全部转为大写。

?

1

UPPER(c1) 【功能】将字符串全部转为大写 【参数】c1,字符表达式 【返回】字符型 【示例】 SQL> select upper('AaBbCcDd') upper from dual; UPPER -------- AABBCCDD 【同类】LOWER()将字符串全部转为小写

?

1

NLS_INITCAP(x[,y]) 【功能】返回字符串并将字符串的第一个字母变为大写,其它字母小写; 【参数】x字符型表达式 【参数】Nls_param可选, 查询数据级的NLS设置:select * from nls_database_parameters; 例如: 指定排序的方式(nls_sort=) 。 nls_sort=SCHINESE_RADICAL_M(部首、笔画) nls_sort=SCHINESE_STROKE_M(笔画、部首SCHINESE_PINYIN_M(拼音)) 【返回】字符型 【示例】 select nls_initcap('ab cde') "test", nls_initcap('a c b d e','nls_sort= SCHINESE_PINYIN_M') "test1" from dual; 返回:Ab Cde, A C B D E select nls_initcap('ab cde') "test", nls_initcap('a c b d e','NLS_LANGUAGE=AMERICAN') "test1" from dual;

?

1

NLS_LOWER(x[,y]) 【功能】返回字符串并将字符串的变为小写; 【参数】x字符型表达式 【参数】Nls_param可选,指定排序的方式(nls_sort=) 。 SCHINESE_RADICAL_M(部首、笔画) SCHINESE_STROKE_M(笔画、部首SCHINESE_PINYIN_M(拼音)) 【返回】字符型 【示例】 select nls_LOWER('ab cde') "test",nls_LOWER('a c b d e','nls_sort= SCHINESE_PINYIN_M') "test1" from dual; 返回:ab cde,a c b d e

?

1

NLS_UPPER(x[,y]) 【功能】返回字符串并将字符串的转换为大写; 【参数】x字符型表达式 【参数】Nls_param可选,指定排序的方式(nls_sort=) 。 SCHINESE_RADICAL_M(部首、笔画) SCHINESE_STROKE_M(笔画、部首SCHINESE_PINYIN_M(拼音)) 【返回】字符型 【示例】 select NLS_UPPER('ab cde') "test",NLS_UPPER('a c b d e','nls_sort= SCHINESE_PINYIN_M') "test1" from dual; 返回:AB CDE,A C B D E

?

1

INSTR(C1,C2[,I[,J]]) 【功能】在一个字符串中搜索指定的字符,返回发现指定的字符的位置; 【说明】多字节符(汉字、全角符等),按1个字符计算 【参数】 C1 被搜索的字符串 C2 希望搜索的字符串 I 搜索的开始位置,默认为1 J 第J次出现的位置,默认为1 【返回】数值 【示例】select instr('oracle traning','ra',1,2) instring from dual; 返回:9 【示例】select instr('重庆某软件公司','某',1,1),instrb('重庆某软件公司','某',1,1) instring from dual; 返回:3,5

?

1

INSTRB(C1,C2[,I[,J]]) 【功能】在一个字符串中搜索指定的字符,返回发现指定的字符的位置; 【说明】多字节符(汉字、全角符等),按2个字符计算 【参数】 C1 被搜索的字符串 C2 希望搜索的字符串 I 搜索的开始位置,默认为1 J 第J次出现的位置,默认为1 【返回】数值 【示例】select instr('重庆某软件公司','某',1,1),instrb('重庆某软件公司','某',1,1) instring from dual; 返回:3,5

?

1

LENGTH(c1) 【功能】返回字符串的长度; 【说明】多字节符(汉字、全角符等),按1个字符计算 【参数】C1 字符串 【返回】数值型 【示例】 SQL> select length('高乾竞'),length('北京市海锭区'),length('北京TO_CHAR') from dual; length('高乾竞') length('北京市海锭区') length('北京TO_CHAR') ----------------- ---------------- ---------------------------- 3 6 9

?

1

LENGTH(c1) 【功能】返回字符串的长度; 【说明】多字节符(汉字、全角符等),按2个字符计算 【参数】C1 字符串 【返回】数值型 【示例】 SQL> select length('高乾竞'),lengthB('高乾竞') from dual; length('高乾竞') lengthB('高乾竞') ----------------- ---------------- 3 6

?

1

LENGTHC(c1).LENGTH2(c1).LENGTH4(c1) 【功能】返回字符串的长度; 【说明】多字节符(汉字、全角符等),按1个字符计算 【参数】C1 字符串 【返回】数值型 【示例】 SQL> select length('高乾竞'),length('北京市海锭区'),length('北京TO_CHAR') from dual; Oracle中的字符函数中,有一类函数是求字符长度的函数,length、lengthB、lengthC、length2、length4几个函数中比较常用的是length、lengthB。 他们的含义分别是: Length函数返回字符的个数,使用定义是给定的字符集来计算字符的个数 LENGTHB给出该字符串的byte LENGTHC使用纯Unicode LENGTH2使用UCS2 LENGTH4使用UCS4 下面使一些例子: Select length('你好') from dual; 2 Select lengthB('你好'),lengthC('你好'),length2('你好'), length4('你好') from dual;

?

1

 

?

1

 

时间: 2024-11-05 16:26:41

ORACLE字符型函数(一)的相关文章

oracle 字符长度函数及实例教程

oracle 字符长度函数及实例教程 -- Oracle 里面使用 lengthb SQL> select lengthb('123456') from dual; LENGTHB('123456') -----------------                 6 SQL> select lengthb('123456天津') from dual; LENGTHB('123456天津') ---------------------   mysql教程> select char_l

oracle字符/字符串替换

一.语法 repalce(str_source,str1,str2)  把 str_source 中 str1 字符串替换为 str2 字符串,当 str2 为 null 或'' 时,与下个作用相同 replace(str_source,str1)         把str_source 中的 str1 字符串剔除 regexp_replace(str_source,pattern_str,rep_str) 支持正则表达式,用法类似于 replace,但功能更强大 regexp_replace(

ORACLE字符拆分函數返回結果集

 ORACLE不能像MSSQL那樣支持直接返回表類型,所以要先創建一種自定義類型.這裏用到的是嵌套表(Nested Table). 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 -- Nested Table CREATE OR REPLACE TYPE split_str IS TABLE OF VARCHAR(1

ORACLE数值型函数

1 2 3 4 5 6 7 ABS(x) [功能]返回x的绝对值 [参数]x,数字型表达式 [返回]数字   [示例]   select abs(100),abs(-100) from dual; ? 1 sign(x) [功能]返回x的正负值 [参数]x,数字型表达式 [返回]数字,若为正值返回1,负值返回-1,0返回0 [示例] select sign(100),sign(-100),sign(0) from dual; ? 1 power(x,y) [功能]返回x的y次幂 [参数]x,y

oracle字符乱码问题的解决

  今天开发人员说在表字段后添加注释出现乱码,但其他开发人员添加注释无此原因,于是判断是其客户端字符集设置问题. 出现乱码的注释如图 解决方法 1 查看客户端字符集 SQL> select userenv('language') from dual; USERENV('LANGUAGE') ---------------------------------------------------- SIMPLIFIED CHINESE_CHINA.AL32UTF8 2 设置操作系统的环境变量 使客户

PostgreSQL Oracle兼容性 - 计算字符长度与字节长度(char(?) 与varchar(?)空格如何计算长度)

标签 PostgreSQL , Oracle , 字符长度 , 字节长度 , 空格 , varchar , char , 定长 , 变长 , 末尾追加空格 背景 由于多字节字符的存在,所以在数据库应用中,通常会出现两种计算字符串长度的需求: 1.计算字符串个数 2.计算字节数 在不同的数据库中,使用的函数不一样. 如何计算字符和字节个数 https://stackoverflow.com/questions/17062065/how-to-select-data-items-of-a-certa

oracle sql sql-oracle字符编码的问题,虚心求教

问题描述 oracle字符编码的问题,虚心求教 Oracle10.2.0版本,插入中文数据据后,查询是中文都显示不出来,都是问号.大神教教我!百度了挺久还解决不来! 解决方案 http://wenku.baidu.com/link?url=5S_cb29BF9hoCnxsAf7DZy4Wb8oGaATmiWuKECJ6m2vxIxUKM-mAZlATSo-PaLYTA83mu6WfO09ZtAb-njYb9eY7M6Ma-hwaDZrDfZXExT7 解决方案二: 转自:http://wangh

ORACLE常用数值函数、转换函数、字符串函数_oracle

本文更多将会介绍三思在日常中经常会用到的,或者虽然很少用到,但是感觉挺有意思的一些函数.分二类介绍,分别是: 著名函数篇 -经常用到的函数 非著名函数篇-即虽然很少用到,但某些情况下却很实用 注:N表示数字型,C表示字符型,D表示日期型,[]表示内中参数可被忽略,fmt表示格式. 单值函数在查询中返回单个值,可被应用到select,where子句,start with以及connect by 子句和having子句. (一).数值型函数(Number Functions) 数值型函数输入数字型参

Oracle的数据缓冲区是如何工作的

本文探讨Oracle数据缓冲区的内部机制--Oracle用这一内存来防止不必要的数据块从磁盘重读.理解Oracle数据缓冲区如何操作,是成功地运用它们调整数据库性能的关键. 在Oracle 8i以前的版本里,当数据块被从磁盘送进数据缓冲区的时候,数据块会被自动地放置到最近使用过的数据列表的前部.但是,这种行为从Oracle 8i开始就变了:新数据缓冲区被放置在缓冲区链的中部.在调节数据库的时候,你的目标就是为数据缓冲区分配尽量多的内存,而不会导致数据库服务器在内存里分页.数据缓冲区每小时的命中率