字符函数-(学习笔记)

--字符函数
--upper()将字符转换为大写
--lower()将字符转换为小写
SELECT UPPER(‘liunan‘),LOWER(‘LIUNAN‘)
FROM dual;
--查询SMITH的信息,写smith写成小写,用UPPER转换为大写
SELECT *
FROM emp e
WHERE e.ename=UPPER(‘smith‘);
--查询所有员工的姓名并将所有员工姓名,首字母大写
SELECT e.empno,e.ename 原来的姓名,INITCAP(e.ename) 员工姓名首字母大写
FROM emp e;
--查询所有员工的编号,姓名,并且将员工姓名中所有字母A替换为字符‘_‘
SELECT e.empno,e.ename 原来的姓名,
REPLACE(ename,‘A‘,‘_‘) 字母A替换为字符_
FROM emp e;

SELECT e.empno,e.ename 原来的姓名,
Translate(ename,‘A‘,‘_‘) 字母A替换为字符_
FROM emp e;
--查询出姓名长度是5的所有员工信息
SELECT *
FROM emp e
WHERE LENGTH(e.ename)=5;
--查询姓名前3个是JAM的员工信息substr
SELECT *
FROM emp e
WHERE substr(e.ename,0,3)=‘JAM‘;
SELECT *
FROM emp e
WHERE e.ename LIKE ‘JAM%‘;

--查询所有10部门员工的姓名,但不显示第个员工的前3个字母
SELECT e.deptno,e.ename 原来的姓名,
SUBSTR(e.ename,4) 不显示前3个字母姓名
FROM emp e
WHERE e.deptno=10;
--显示所有员工的姓名及后3个字母 -负代数从后向前
SELECT e.ename 原来的姓名,SUBSTR(e.ename,-3) 后3个字母
FROM emp e;
--用LENGTH也可以实现
SELECT e.ename 原来的姓名,SUBSTR(e.ename,-3) 后3个字母,
SUBSTR(e.ename,LENGTH(e.ename)-2) 后3个字母
FROM emp e;
--substr下标是从1开始的,设置为0会自动从1开始,设置为负数从后向前截取
--返回指定字符的ASCII码
SELECT ASCII(‘A‘),ASCII(‘a‘) FROM dual;
--chr()将ASCII变为字符
SELECT CHR(‘65‘),CHR(‘97‘) FROM dual;
SELECT ASCII(‘A‘),ASCII(‘a‘),CHR(‘65‘),CHR(‘97‘) FROM dual;

--去掉左边空格
SELECT LTRIM(‘ liunan ‘) FROM dual;
--去掉右边空格
SELECT LTRIM(‘ liunan ‘) 去掉左边空格,
RTRIM(‘ liunan ‘) 去掉右边空格
FROM dual;

--去掉2边空格

SELECT LTRIM(‘ liunan ‘) 去掉左边空格,
RTRIM(‘ liunan ‘) 去掉右边空格,
TRIM(‘ liunan ‘) 去掉2边空格
FROM dual;
--LTRIM/RTRIM也可以截取
SELECT LTRIM(‘xyzadams‘,‘xyz‘) 左侧去掉xyz,
RTRIM(‘xyzadams‘,‘ams‘) 右侧去掉ams
FROM dual;
--字符左,右填充函数LPAD(),RPAD()
SELECT LPAD(‘liunan‘,10,‘*‘) 去掉字符长度后左侧填充指定字符,
RPAD(‘liunan‘,10,‘*‘) 去掉字符长度后左侧填充指定字符,
RPAD(LPAD(‘liunan‘,10,‘*‘),14,‘*‘) 搭配使用左右填充
FROM dual;

时间: 2024-08-04 09:50:19

字符函数-(学习笔记)的相关文章

python之转移字符(学习笔记三)

python之转移字符(学习笔记三) 转义字符 \ 可以转义很多字符,比如 \n 表示换行, \t 表示制表符,字符 \ 本身也要转义,所以 \\ 表示的字符就是 \ ,可以在Python的交互式命令行用print打印字符串看看: 命令: >>>print 'he\'s a boy.' >>>print 'I\'m learning\nlinux.' >>>print '\\\n\\' 截图: 如果字符串里面有很多字符都需要转义,就需要加很多 \ ,为

C++运算符重载为友元函数学习笔记

初探C++运算符重载学习笔记 在上面那篇博客中,写了将运算符重载为普通函数或类的成员函数这两种情况. 下面的两种情况发生,则我们需要将运算符重载为类的友元函数 <1>成员函数不能满足要求 <2>普通函数又不能访问类的私有成员时 举例说明: class Complex{ double real, imag; public: Complex(double r, double i):real(r), imag(i){ }; Complex operator+(double r); };

contiki-main.c 中的process系列函数学习笔记 &lt;contiki学习笔记之六&gt;

说明:本文依然依赖于 contiki/platform/native/contiki-main.c 文件. ------------------------------------------------------------------------------------------------------------------------------------- 根据上一个笔记里面添加的printf()语句的打印信息提示,hello world 打印是在执行了 1 autostart_

MySQL函数学习笔记二:字符函数

1. 计算字符串字符数和字符串长度 - CHAR_LENGTH(s) CHAR_LENGTH(str): 返回str所包含的字符个数. mysql> select CHAR_LENGTH('MySQL'); +----------------------+ | CHAR_LENGTH('MySQL') | +----------------------+ |                    5 | +----------------------+ 2. 合并字符 - CONCAT(s1,s

Swift2.0 函数学习笔记

最近又有点忙,忙着找工作,忙着适应这个新环境.现在好了,上班两周周了,也适应过来了,又有时间安安静静的就行我们前面的学习了.今天这篇笔记,记录的就是函数的使用.下面这些代码基本上是理清楚了函数的额使用,但还有一块“闭包”的内容,后面我们单独写一块出来. // 形参传递的过程中,由于没有写外部形参名称,第一个形参的外部形参名字可以省略,第二的的不可以省略 let zxtest = testString(1, zc: 2) print(zxtest) // 返回值是一个元组的形式返回到,参数的传递和

MYSQL存储过程和函数学习笔记

学至Tarena金牌讲师何山,金色晨曦科技公司技术总监沙利穆课程笔记的综合. 1. 什么是存储过程和函数 将SQL语句放入一个集合里,然后直接调用存储过程和函数来执行已经定义好的SQL语句,通过存储过程和函数,可以避免开发人员重复编写相同的SQL语句. MYSQL存储过程和函数是保存在服务器中,在服务器中存储和执行,可以减少客户端和服务器端之间数据传输的消耗. 存储过程就是一组已经保存在数据库中的语句,并且可以随时地调用. 存储过程允许标准组件式编程,存储过程在被创建以后可以在程序中被多次调用而

函数(学习笔记)

函数(存储函数)也是一种较为方便的存储结构,用户定义函数可以被SQL语句或者PL/SQL直接调,函数和过程最大的区别在于,函数可以有返回值,而过程只能依靠OUT 或者IN OUT返回数据定义函数语法:CREATE [OR REPLACE] FUNCTION 函数([参数,...]])RETURN 返回值类型 [AUTHID [DEFINER | CURRENT_USER]] AS || IS [PRAGMA AUTONOMOUS_TRANSACTION;] 声明部分;BEGIN 程序部分; [R

10、进程管理,case和函数 学习笔记

ps:显示系统当前进程状态的命令 ps a 所有与终端相关的进程 ps x 所有与终端无关的进程 ps u 以用户为中心显示进程相关信息 VSZ: 虚拟内存集,Virutal menmory Size RSS: 常驻内存集 STAT: R:运行或可运行 S:可中断睡眠 D:不可中断睡眠 T:停止 Z:僵死 s:session leader 有子进程 +:前台进程 l:多线程进程 N:低优先级进程 <: 高优先级进程 START: 启动时间 TIME: 累计占用的内存时间 COMMAND []表示

linux字符设备学习笔记【原创】

1.申请设备号 int register_chrdev_region(dev_t from, unsigned count, const char *name) 指定从设备号from开始,申请count个设备号,在/proc/devices中的名字为name.返回值:成功返回0,失败返回错误码. 2.动态的申请设备号 int alloc_chrdev_region(dev_t *dev, unsigned baseminor, unsigned count, const char *name)

python3-学习正则表达式+dict/list内置函数(学习笔记)

正则表达式 \s 空格(包括tab等空白符) [] 此范围内1个任意字符 \w 1个字母或数字 ^ 行的开头 \d 1个数字 $ 行的结尾 . 1个任意字符 {n} n个字符 * 0~任意个字符 {n,m} n~m个字符 + 1~任意个字符(至少1个) () 分组 A|B A或者B ? 0~1个字符:加在+.*后为非贪婪匹配(尽可能少的匹配) dict/list内置函数 dict.items() 迭代dict的key-value对, for k,v in dict.items() k+"=&qu