Oracle课程档案,第二天
salary:工资
order by:排序
desc:降序
hire:雇佣
单行函数
一周有七天
一月不一定只有30天
trunc:截取
dual:空表
last:最后
month:月份
round:四舍五入法
substr:字符串截取
length:字符串长度
replace:字符串内容替换
upper:把小写字母转换成大写字母
lower:把大写字符转换成小写字母
initcap:把单词转换成首字母大写的形式
日期 - 日期 = 数字 (表示天数)
日期 - 数字 = 日期
日期 + 数字 = 日期
四舍五入的函数:★★
select round(123.45,1)from dual 123.5
+1:四舍五入取小数点后一位
select round(123.45,-1)from dual 120
-1:四舍五入取十位
select round(123.45,0)from dual 123
0:四舍五入取整数
trunc:截取
截断小数位函数 ---- trunc(),如:
a)SELECT trunc(789.536) FROM dual; 默认只保留整数位,并且小数位不做四舍五入运算;
b)SELECT trunc(789.536, 2) FROM dual; 保留两位小数,小数位不做四舍五入运算;
c)SELECT trunc(789.536, -2) FROM dual; 在整数位从低位向高位舍弃,位数上的数字大于5同样被舍弃,做0看待
日期:
B)函数:
a)months_between() ---- 求出指定范围的月数,如:SELECT empno, ename, round(months_between(sysdate, hiredate)) FROM emp ;
b)add_months() --- 在指定的日期上加上指定的月数,如:SELECT add_months(sysdate, 3) FROM dual;
c)next_day() ---- 求取和本周星期数相同的下周的星期数是几号,如:SELECT last_day(sysdate, '星期日') FROM dual;
d)last_day() --- 求取本月的最后一天是几号,如:SELECT last_day(sysdate) FROM dual;
char:字符串类型
转换函数:从一种数据类型转换成另一种数据类型;
A)日期通配符的一点介绍:
1)年:y,年是四位数字,故使用 yyyy 表示年;
2)月:m,月是两位数字,故使用 mm 表示月;
3)日:d,日是两位数字,故使用 dd 表示月;
B)函数:
1)to_char() ---- 转换成字符串,如:
SELECT empno, ename, to_char(hiredate, 'yyyy') year , to_char(hiredate, 'mm') month , to_char(hiredate, 'dd') day FROM emp; 此实例完成日期的拆分工作,即分别取出年、月、日,用于格式化使用。
SELECT empno, ename, to_char(hiredate, 'yyyy-mm-dd') FROM emp; 完成日期的本地化;
SELECT empno, ename, to_char(hiredate, 'yyyy-mm-dd') FROM emp; 去掉前导 0,完成日期的本地化。
SELECT empno, ename, to_char(sal, '99,999') FROM emp; 工资显示时每个三位加一个逗号,占位符只能使用数字 9 。
SELECT empno, ename, to_char(sal, '$99,999') FROM emp; 以美元的形式显示工资。
SELECT empno, ename, to_char(sal, 'L99,999') FROM emp; 本地化工资格式,“L” 或 “l” 为 "local“ 的缩写,以为本地化。
2)to_number() --- 转换成数字,如:
SELECT TO_NUMBER('123') + TO_NUMBER('789') FROM dual; 把字符串“123”和字符串“789”转换成数字后进行四则运算。
3)to_date() --- 转换成日期。
SELECT TO_DATE('2011-01-10', 'yyyy-mm-dd') FROM dual; 把字符串日期格式转换成 Oracle 内置的日期格式。
5、通用函数:NVL函数、DECODE函数。
1)NVL() 函数用于把一个变化的值设置另一个默认值,常用语四则计算时把空值 NULL 设置为 0 ,示例如下:
SELECT empno, ename, NVL(comm, 0), (sal + NVL(comm, 0)) * 12 income FROM emp;
2)DECODE() 函数类似于 if...else if...else 语句,用于依次逐个匹配数据并计算结构,如:
SELECT DECODE(1, 1, '内容为 1', 2, '内容为 2', 3, '内容为 3') FROM dual;
SELECT empno 员工编号, ename 员工姓名, hiredate 聘用日期, DECODE(job, 'CLERK', '业务员', 'SALESMAN', '销售员', 'MANGER', '经理', 'PRESIDENT', '总裁') 职位 FROM emp;
NVL:替换值
Oracle课程档案,第二天的更多相关文章
- Oracle课程档案,第九天
lsnrctl status:查看监听状态 Oracle网络配置三部分组成:客户端,监听,数据库 配置文件:$ vi $ORACLE_HOME/network/admin/listener.ora v ...
- Oracle课程档案,第十七天
flashback drop 闪回下降(删除)SQL> show parameter recyclebinSQL> purge recyclebin;(清除回收站)SQL> crea ...
- Oracle课程档案,第十六天
restore:恢复文件 recover: 恢复日志 丢失current日志组(正常关闭数据库):故障:SQL> select group#, status from v$log; 确认curr ...
- Oracle课程档案,第十四天
备份数据文件:SQL> select file_id, file_name from dba_data_files; backup:备用(备份) datafile:数据文件 backup tab ...
- Oracle课程档案,第十五天
restore:恢复数据文件 recover:写日志 1.redo(roll forward)重做 (前进) 2.undo(roll back) 撤销 (回滚) cp -r:删除一个目录 archiv ...
- Oracle课程档案,第十三天
配置可恢复性: ontrol_files:控制文件 parameter:参数 show:显示 select name from v$database; 查看当前的数据库★★ 控制文件SQL> s ...
- Oracle课程档案,第十二天
死锁是由于两个对象在拥有一份资源的情况下申请另一份资源, 而另一份资源恰好又是这两对象正持有的,导致两对象无法完成操作,且所持资源无法释放. 阻塞是由于资源不足引起的排队等待现象. unso:撤销 c ...
- Oracle课程档案。第十一天
读一致性:oracle通过多版本与闪回机制保证读一致性.保证从某个时间点开始查询是一致的.在Oracle中主要通过SCN版本号来控制系统修改的版本,典型的例子是我们可以通过在同一个查询中得到同一个对象 ...
- Oracle课程档案,第十天
用户管理 Authentication: 身份验证 AAA:Authentication: 身份验证 Authorization: 权限管理 Audition: 审计 grant:授权 unset:撤 ...
随机推荐
- Netty实战 - 1. 基本概念
1. Netty简介 Netty是由JBOSS提供的一个java开源框架.它提供异步的.事件驱动的网络应用程序框架和工具,用以快速开发高性能.高可靠性的网络服务器和客户端程序.Netty是一个基于NI ...
- [Python设计模式] 第23章 烤串的哲学——命令模式
github地址:https://github.com/cheesezh/python_design_patterns 题目1 用程序模拟,顾客直接向烤串师傅提需求. class Barbecuer( ...
- 【原】Linux环境下Shell调用MySQL并实现定时任务
对于一些周期性事务,我们可以在Linux下,使用shell脚本调用mysql数据库存储过程,并设置定时任务. 本来是要mysql数据库中创建事件任务来,定时执行存储过程,做数据传输的...使用cron ...
- react diff 原理
(1) 把树形结构按照层级分解,只比较同级元素.(2) 列表结构的每个单元添加唯一的 key 属性,方便比较.(3) React 只会匹配相同 class 的 component(这里面的 class ...
- Android中的指纹识别
转载请注明出处:http://blog.csdn.net/wl9739/article/details/52444671 评论中非常多朋友反映,依据我给出的方案,拿不到指纹信息这个问题,在这里统一说明 ...
- dajpper使用教程
1.表结构 2.程序对应的实体类 3.基本操作 3.1 插入 123456789 public int Insert(Person person, string _ConnString){ using ...
- 小白都能看明白的VLAN原理解释
为什么需要VLAN 1. 什么是VLAN? VLAN(Virtual LAN),翻译成中文是“虚拟局域网”.LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成的企业网络.VLAN ...
- MySQL高性能优化系列-目录
MySQL高性能优化系列-目录 (1)Mysql高性能优化规范建议 (2)电商数据库表设计 (3)MySQL分区表使用方法 (4)MySQL执行计划分析 (5)电商场景下的常见业务SQL处理 (6)M ...
- count(*)、count(1)和count(列名)的区别
count(*).count(1)和count(列名)的区别 1.执行效果上: l count(*)包括了所有的列,相当于行数,在统计结果的时候,不会忽略列值为NULL l count(1)包 ...
- 01Spark的TopN问题
和hadoop的目的一样,给你数据,然后取TopN.数据如下: 取出数据在排名前十的数据. 代码如下: package com.test.book; import java.util.ArrayLis ...