Oracle学习第二篇—单行函数
1字符函数
length 字符长度 lengthb 字节长度 lower 变为小写 upper 变为大写 initcap 首字母大写 |
select Lower('xun Ying') 小写,Upper('xun Ying') 大写, initcap('xun Ying') 首字母大写 from dual |
lpad 左填充 rpad 右填充 trim 去掉前后指定的字符 replace instr 在母串中查找子串,找到返回下标(从1开始),否则返回0 |
1 select lpad('abcd',10,'*') 左,rpad('abcd',10,'*') 右 2 select trim('H' from 'Hello WorldH') from dual; 3 select replace('Hello World','l','*') from dual; 4 select instr('Hello World','ll') from dual; |
2 数字函数
ROUND(x,d) 对x进行四舍五入,d来控制它的位数 |
ROUND(45.926, 2) 45.93 ROUND(45.926, 1) 45.9 ROUND(45.926, 0) 46 ROUND(45.926, -1) 50 ROUND(45.926, -2) 0 |
TRUNC (x,d) 将数字截尾取整 |
TRUNC(45.926, -1) 40 TRUNC(45.926, 1) 45.9 |
Mod(A,B) A%B |
3 通用函数
参数可以是任意数据类型 |
1 NVL过滤空值的函数 nvl(comm,0) |
2 nvl2(a,b,c) 当a=null时,返回c,否则返回b |
3 nullif(a,b) 当a=b时,返回null,否则返回a |
4 日期函数
日期的运算 1)日期加减一个数,此数指的是天;两个日期相加没有意义 2)日期相互减后的结果是相差的天数 可以通过加减来 近似的算出工龄 |
select sysdate from dual 10-11月-14
select sysdate-1 昨天,sysdate 今天,sysdate+1 明天 from dual
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual
select to_char(systimestamp,'yyyy-mm-dd hh24:mi:ss*ff') from dual;
select (sysdate-hiredate)/30 一,
MONTHS_BETWEEN(sysdate,hiredate) 二 from emp;
5 条件表达式
1 CASE表达式 SQL99的语法,类似BASIC |
语法: case column when exp then return_value end |
2 DECODE函数: oracle自己的语法,类似java |
语法: DECODE(exp|column,search1,result1,....) |
如:根据职位涨工资,总裁+1000,经理 800,其他 400
select ename,job,sal 涨前薪水,
case job when 'PRESIDENT' then sal+1000
when 'MANAGER' then sal+800
else sal+400
end 涨后薪水
from emp; select ename,job,sal 涨前薪水,
decode(job,'PRESIDENT',sal+1000,
'MANAGER', sal+800,
sal+400) 涨后薪水
from emp;
Oracle学习第二篇—单行函数的更多相关文章
- Oracle学习笔记_03_单行函数
1.SQL函数: 单行函数.多行函数 单行函数: 操作数据对象 接受参数返回一个结果 只对一行进行变换 每行返回一个结果 可以转换数据类型 ...
- oracle学习 第二章 限制性查询和数据的排序 ——03
这里.我们接着上一小节2.6留下的问题:假设要查询的字符串中含有"_"或"%".又该如何处理呢? 開始今天的学习. 2.7 怎样使用转义(escape)操作符 ...
- Java并发包下锁学习第二篇Java并发基础框架-队列同步器介绍
Java并发包下锁学习第二篇队列同步器 还记得在第一篇文章中,讲到的locks包下的类结果图吗?如下图: 从图中,我们可以看到AbstractQueuedSynchronizer这个类很重要(在本 ...
- Java泛型学习---第二篇
泛型学习第一篇 1.泛型之擦拭法 泛型是一种类似"模板代码"的技术,不同语言的泛型实现方式不一定相同. Java语言的泛型实现方式是擦拭法(Type Erasure). 所谓擦拭法 ...
- 从.Net到Java学习第二篇——IDEA and start spring boot
从.Net到Java学习第一篇——开篇 所谓工欲善其事,必先利其器,做java开发也一样,在比较了目前最流行的几个java IDE(eclipse,myeclipse.IDEA)之后,我果断选择IDE ...
- Oracle总结第二篇【视图、索引、事务、用户权限、批量操作】
前言 在Oracle总结的第一篇中,我们已经总结了一些常用的SQL相关的知识点了-那么本篇主要总结关于Oralce视图.序列.事务的一些内容- 在数据库中,我们可以把各种的SQL语句分为四大类- (1 ...
- Golang学习-第二篇 搭建一个简单的Go Web服务器
序言 由于本人一直从事Web服务器端的程序开发,所以在学习Golang也想从Web这里开始学起,如果对Golang还不太清楚怎么搭建环境的朋友们可以参考我的上一篇文章 Golang的简单介绍及Wind ...
- 【Java EE 学习 28 上】【oracle学习第二天】【子查询】【集合运算】【几种数据库对象】
一.子查询 1.为什么要使用子查询:问题不能一步求解或者一个查询不能通过一步查询得到. 2.分类:单行子查询和多行子查询. 3.子查询的本质:一个查询中包含了另外一个或者多个查询. 4.使用子查询的规 ...
- Oracle学习第二天
oracle数据库的常见数据类型oracle全部数据类型 有26种 char定长字符串类型 长度是固定不变的 例如:no char(10) 如果存入的值不足十个字符,其它位也被占用默认长度是1 最大长 ...
随机推荐
- 调用Thread.interrupt()方法到底会发生什么?
1. 当线程处于Blocked状态(sleep,wait,join),线程会退出阻塞状态,并抛出一个InterruptedException.park除外,它有响应但是不会抛出异常 2. 当线程处于R ...
- HDU-ACM“菜鸟先飞”冬训系列赛——第7场 H
Problem H Problem Description 小边为了寻找梦寐以求的骨头误入一个迷宫,它灵敏的嗅觉告诉它,在迷宫中的某一处有一块完美的骨头.由于迷宫会在一段时间后关闭,所以小边必须在一定 ...
- MariaDB主从复制、主主复制
1.部署 10.0.0.21 MariaDB-21 10.0.0.22 MariaDB-22 cat /etc/yum.repos.d/mariadb.repo [mariadb] name=Ma ...
- luogu P1314 聪明的质监员
题目描述 小T 是一名质量监督员,最近负责检验一批矿产的质量.这批矿产共有 n 个矿石,从 1到n 逐一编号,每个矿石都有自己的重量 wi 以及价值vi .检验矿产的流程是: 1 .给定m 个区间[L ...
- Linux(二) 常用命令
Linux简介及Ubuntu安装 Linux,免费开源,多用户多任务系统.基于Linux有多个版本的衍生.RedHat.Ubuntu.Debianaa 安装VMware或VirtualBox虚拟机 ...
- dedecms 调用栏目或文章所属上下级关系
效果如下: 代码如下: <div class="place"> <strong>当前位置:</strong> {dede:field name= ...
- php正则表达式取子字符串及替换
最近在学习如何用php编写cms,想把文章中的第一个图片提取出来当做缩略图显示到前面,想到的方法就是把文章内容作为一个大字符串,然后用正则表达式找出匹配出第一次出现<img src=" ...
- cordova 中de.sitewaerts.cordova.documentviewer 插件 看pdf图片缩略图与实际图片不一致
//if (document == nil) // Unarchive failed so create a new ReaderDocument object //{ document = [[Re ...
- LCD设备驱动程序
LCD是Liquid Crystal Display的简称,也就是经常所说的液晶显示器 LCD能够支持彩色图像的显示和视频的播放,是一种非常重要的输出设备 Framebuffer 是Linux系统 ...
- 【秀优越(xie e)】原来出题也能够这么恶心。
通过邪恶的数据范围和数据限制居然能够把一道传统题出成题答2333. 诶毕竟内部互測,题目就不往上贴了. 特殊限制 - - - 题目作废.输出M行"Orz PoPoQQQ" - M ...