当前位置:  数据库>oracle

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

    来源: 互联网  发布时间:2017-04-22

    本文导语: 字符型 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; ASCI...

字符
 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 系统变量函数用法指南
  • Oracle中decode函数的用法
  • Oracle round()函数与trunc()函数区别介绍
  • oracle中lpad函数的用法详解
  • MySQL实现类似Oracle中的decode()函数的功能
  • Oracle函数substr(str1, pos, [len])
  • Oracle 函数大全[字符串函数,数学函数,日期函数]第1/4页
  • SQL中Charindex和Oracle中对应的函数Instr对比
  • apache通过php的oci函数读取Oracle(字符集ZHS16GBK)时,显示乱码,如何解决?
  • MySQL实现类似Oracle中的decode()函数的功能 iis7站长之家
  • oracle合并列的函数wm_concat的使用详解
  • 请问:在使用oracle数据库作开发时,是使用pro*c作开发好些,还是使用库函数如oci等好一些啊?或者它们有什么区别或者优缺点啊?
  • c#中oracle to_date函数用法举例
  • Oracle 函数用法之decode
  • Oracle过程与函数的区别分析
  • Oracle层次查询和with函数的使用示例
  • oracle的nvl函数的使用介绍
  • c#中oracle的to_date函数使用方法
  • Oracle中nul()函数
  • 在Red Hat Linux 9 和 Oracle 9.2 环境下,如何配制字符集,让Oracle能存入并显示日语里的假名?
  • ORACLE 10G修改字符编码没有超字符集的限制
  • 查询与修改Oracle字符集
  • oracle查看字符集后修改oracle服务端和客户端字符集的步骤
  • oracle截取字符(substr)检索字符位置(instr)示例介绍
  • 关于Oracle BLOB类型,一个String字符怎么写入BLOB字段?
  • Oracle中SQL语句连接字符串的符号使用介绍
  • Oracle中字符串连接的实现方法
  • Oracle将字符编码从GBK转到UTF8,如何操作比较稳妥?
  • Oracle中字符集的类型决定varchar2的字符长度
  • 安装oracle9的时候字符无法显示??
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • ORACLE数据库常用字段数据类型介绍
  • oracle中的空类型与c语言的空类型相匹配吗?
  • Oracle中查看某列数据类型
  • 测试添加Oracle中Blob数据类型对象
  • jsp文件上传smartupload到oracle数据库中没有longblob的数据类型如何处理的?
  • oracle中 VARCHAR2是什么数据类型
  • 请问保存文章内容的字段应用什么类型的(oracle),急!!!
  • oracle中怎么没有boolean类型的字段?应该用什么代替?
  • 如何向oracle库中字段类型是date的添加数据
  • 请问:ORACLE中的数据取出来后,需不需要进行一定的转换才能变为C语言的数据类型啊?
  • jsp中在oracle中查询日期类型时sql语句该怎么写啊?
  • 怎样将当前时间写到Oracle中date类型的字段中!!!!!!!!!!!!
  • 急!急!oracle 中 long 类型在 tomcat 中的问题
  • 不能把几百个以上的汉字插入oracle varchar2类型的问题!
  • Oracle里long类型
  • jsp显示oracle中varchar2类型字段 在线等待
  • Oracle中的Raw类型解释
  • 我要向oracle中插入大文本,用的是lang类型的字段,但是只能插3000字,再多就抱错,说我字符串过长。谁遇到过此问题?
  • 在Oracle的函数中,返回表类型的语句
  • 高分求救:谁用过JSP处理ORACLE数据库中的LONG RAW类型字段
  • 急死了! oracle中long数据类型问题! 重酬!!!
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3