oracle 常用sql字符函数介绍
常用字符函数介绍
1、ascii
返回与指定的字符对应的十进制数;
SQL>select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual;
A A ZERO SPACE
---------- ---------- ---------- ----------
65 97 48 32
2、chr
给出整数,返回对应的字符;
SQL>select chr(54740) zhao,chr(65) chr65 from dual;
ZHAO CHR65
---- -----
赵 A
3、concat
连接两个字符串;
SQL>select concat('010-','88888888')||'转23' 高乾竞电话 from dual;
高乾竞电话
----------------
010-88888888转23
特别说明:concat(字串1或字段1,字串2或字段2)也可以书写成 字串1或字段1 || 字串2或字段2
4、initcap
返回字符串并将字符串的第一个字母变成大写;
SQL>select initcap('smith') upp from dual;
UPP
-----
Smith
5、instr(C1,C2,I,J)
在一个字符串中搜索指定的字符,返回发现指定的字符的位置;
C1 被搜索的字符串;
C2 希望搜索的字符串;
I 搜索的开始位置,默认为1;
J 出现的位置,默认为1;
SQL>select instr('oracle traning','ra',1,2) instring from dual;
INSTRING
----------
9
6、length
返回字符串的长度;
SQL>select ename,length(ename),job,length(job),sal,length(to_char(sal)) from emp where ename='SMITH';
ENAME LENGTH(ENAME) JOB LENGTH(JOB) SAL LENGTH(TO_CHAR(SAL))
---------- ------------- --------- ----------- --------- --------------------
SMITH 5 CLERK 5 800.00 3
特别说明:在oracle中单个汉字、字母、还是特殊符号都认为是长度为1
7、lower
返回字符串,并将所有的字符小写;
SQL>select lower('AaBbCcDd') "lower-AaBbCcDd" from dual;
lower-AaBbCcDd
--------------
aabbccdd
8、upper
返回字符串,并将所有的字符大写;
SQL>select upper('AaBbCcDd') "upper-AaBbCcDd" from dual;
upper-AaBbCcDd
--------------
AABBCCDD
练习:请把雇员的名字,首字母小写,其它大写。
SQL>select substr(lower(ename),1,1)||substr(upper(ename),2,length(ename)) "eNAME"from emp where ename='SMITH';
SQL>select concat(substr(lower(ename),1,1),substr(upper(ename),2,length(ename))) "eNAME"from emp where ename='SMITH';
eNAME
--------------------
sMITH
特别说明:函数是可以相互嵌套,复合使用的。
9、rpad和lpad(粘贴字符)
rpad在列的右边粘贴字符 rpad('显示内容'或字段,显示长度,'填充占位符')
lpad在列的左边粘贴字符 lpad('显示内容'或字段,显示长度,'填充占位符')
SQL>select lpad(rpad('gao',10,'*'),17,'*') from dual;
LPAD(RPAD('GAO',10,'*'),17,'*'
------------------------------
*******gao*******
10、ltrim和rtrim
ltrim 删除左边出现的字符串 ltrim('原内容'或字段,'要删除的字符串')
rtrim 删除右边出现的字符串 rtrim('原内容'或字段,'要删除的字符串')
SQL>select ltrim(rtrim(' gao qian jing ',' '),' ') from dual;
LTRIM(RTRIM('GAOQIANJING',''),
------------------------------
gao qian jing
SQL>select rtrim('**gao qian jing**','*') from dual;
RTRIM('**GAOQIANJING**','*')
----------------------------
**gao qian jing
SQL>select ltrim('**gao qian jing**','*') from dual;
LTRIM('**GAOQIANJING**','*')
----------------------------
gao qian jing**
11、substr(string,start,count)
取子字符串,从start开始,取count个
SQL>select substr('13088888888',3,8) from dual;
SUBSTR('13088888888',3,8)
-------------------------
08888888
12、replace('string','s1','s2')
string 希望被替换的字符或变量
s1 被替换的字符串
s2 要替换的字符串
SQL>select replace('he love you','he','i') from dual;
REPLACE('HELOVEYOU','HE','I')
-----------------------------
i love you
13、soundex
返回一个与给定的字符串读音相同的字符串;
SQL>create table table1(xm varchar(8));
SQL>insert into table1 values('weather');
SQL>insert into table1 values('wether');
SQL>insert into table1 values('gao');
SQL>select xm from table1 where soundex(xm)=soundex('weather');
XM
--------
weather
wether
特别说明:soundex找出读音相同的字符串,但无法找出汉字的读音,只能找出英文和拼音的读音。
14、trim('s' from 'string')
leading 剪掉前面的字符
trailing 剪掉后面的字符
如果不指定,默认为空格符。
SQL>select trim(0 from 0009872348900) "trim example" from dual;
trim example
------------
98723489
oracle 常用sql字符函数介绍的更多相关文章
- Oracle常用SQL时间函数
1.查询当前日期和时间 select sysdate from dual; 2.查询本月最后一天 select last_day(sysdate) from dual; 3.查询前后多少月 ) fro ...
- oracle常用SQL语句(汇总版)
Oracle数据库常用sql语句 ORACLE 常用的SQL语法和数据对象一.数据控制语句 (DML) 部分 1.INSERT (往数据表里插入记录的语句) INSERT INTO 表名(字段名1, ...
- oracle 常用sql语句
oracle 常用sql语句 1.查看表空间的名称及大小 select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_sizefrom d ...
- Python的常用内置函数介绍
Python的常用内置函数介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.取绝对值(abs) #!/usr/bin/env python #_*_coding:utf-8_ ...
- Oracle常用SQL查询(2)
三.查看数据库的SQL 1 .查看表空间的名称及大小 select t.tablespace_name, round ( sum (bytes / ( 1024 * 1024 )), 0 ) ts ...
- Oracle常用SQL查询
一.ORACLE的启动和关闭 1.在单机环境下要想启动或关闭oracle系统必须首先切换到oracle用户,如下: su - oracle a.启动Oracle系统 oracle>svrmgrl ...
- ORACLE 常用SQL查询
一.ORACLE的启动和关闭 1 .在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a.启动ORACLE系统 oracle > sv ...
- Oracle中的字符函数
Oracle中常用的字符串函数有以下几种: 1.upper()---将字符串的内容全部转换为大写.lower()---将字符串的内容全部转换为小写.具体用法: select upper('test' ...
- 【重温基础】JS中的常用高阶函数介绍
Ps. 晚上加班到快十点,回来赶紧整理整理这篇文章,今天老大给我推荐了一篇文章,我从写技术博客中收获到了什么?- J_Knight_,感受也是很多,自己也需要慢慢养成记录博客的习惯,即使起步艰难,难以 ...
随机推荐
- STM32 下的库函数和寄存器操作比较
以 led闪烁中的flashLed函数例子: 库函数操作简单,但是效率不如寄存器操作的高: 寄存器操作很复杂,因为要熟悉上百个寄存器,但是程序效率很高 /**下面是通过直接操作库函数的方式实现IO控制 ...
- java.sql.SQLException:Column count doesn't match value count at row 1
1.错误描述 java.sql.SQLException:Column count doesn't match value count at row 1 2.错误原因 在插入数据时,插入的字段 ...
- JSON对象转换成JSON字符串
1.问题背景 有一个json对象,需要将其转换成json字符串 JSON.stringify(obj) 2.实现源码 <!DOCTYPE html PUBLIC "-//W3C//DT ...
- HTML5中的checkbox
HTML5中的checkbox 1.选中checkbox (1)<input type="checkbox" checked/> (2)<input type=& ...
- 【原】Java学习笔记030 - 异常
package cn.temptation; public class Sample01 { public static void main(String[] args) { /* * 异常:Java ...
- asp.net core轻松入门之MVC中Options读取配置文件
接上一篇中讲到利用Bind方法读取配置文件 ASP.NET Core轻松入门Bind读取配置文件到C#实例 那么在这篇文章中,我将在上一篇文章的基础上,利用Options方法读取配置文件 首先注册MV ...
- javascript学习记录-2-18
对象定义的几种方法: var person=new Object(); person.name="111"; person.age=22; 或 var person={ na ...
- 【BZOJ1499】瑰丽华尔兹(动态规划)
[BZOJ1499]瑰丽华尔兹(动态规划) 题面 BZOJ 题解 先写部分分 设\(f[t][i][j]\)表示当前在\(t\)时刻,位置在\(i,j\)时走的最多的步数 这样子每一步要么停要么走 时 ...
- 【BZOJ3992】序列统计(动态规划,NTT)
[BZOJ3992]序列统计(动态规划,NTT) 题面 BZOJ 题解 最裸的暴力 设\(f[i][j]\)表示前\(i\)个数,积在膜意义下是\(j\)的方案数 转移的话,每次枚举一个数,直接丢进去 ...
- [TJOI2015]旅游
树链剖分+线段树 线段树维护max,min,左往右的最大差,右往左的最大差 求LCA时一定要注意方向 # include <bits/stdc++.h> # define RG regis ...