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 最大长 ...
随机推荐
- PyCharm 快捷键总结
运行 Shift+alt+F10 执行程序 调试 Shift+alt+F9 Debug调试 Shift + F9 对当前文件进行Debug F8 调试模式下 跳过 F7 调试模式下 进入 F9 快速调 ...
- window postgresql 10.4安装
window installer下载地址:https://www.enterprisedb.com/downloads/postgres-postgresql-downloads 其他版本官网下载地址 ...
- LeetCode OJ-- Jump Game
https://oj.leetcode.com/problems/jump-game/ 从0开始,根据每一位上存的数值往前跳. 这道题给想复杂了... 记录当前位置 pos,记录可以调到的最远达位置为 ...
- 洛谷 P1579 哥德巴赫猜想(升级版)【筛素数/技巧性枚举/易错】
[链接]:https://www.luogu.org/problemnew/show/P1579 题目背景 1742年6月7日哥德巴赫写信给当时的大数学家欧拉,正式提出了以下的猜想:任何一个大于9的奇 ...
- HDU——最大连续子序列(区间DP)
上一个题的加强版! 最大连续子序列 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others ...
- Algorithm | Vector
因为平常用的话只是vector的一些非常简单的功能,基本上把它当数组来用,现在也只是把这一部分写了一些. template<class T> class XVector { public: ...
- bzoj 2889: Tree Conundrum
2889: Tree Conundrum Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 61 Solved: 37[Submit][Status][ ...
- source(.)/export/shell
用户登录到Linux系统后,系统将启动一个用户shell.在这个shell中,可以使用shell命令或声明变量,也可以创建并运行shell脚本程序.运行shell脚本程序时,系统将创建一个子shell ...
- EVB-P6UL:一识庐山真面目
前言 原创文章,转载引用务必注明链接.水平有限,如有疏漏,欢迎指正. 本文使用Markdown写成,为获得更好的阅读体验与正确的图片链接显示,请访问我的博客原文: 在爱板网上看到这个活动,昨晚确认,今 ...
- apue学习笔记(第十四章 高级I/O)
本章涵盖了从多概念和函数:非阻塞I/O.记录锁.I/O多路转换.异步I/O.readv和writev函数以及存储映射I/O 非阻塞I/O 非阻塞I/O使我们可以发出open.read和write这样的 ...