十一、replace 替换
格式:(原字符串,要查找的字符或字符串,替换的字符或字符串)
select replace('hello world','o','a') from dual; //替换时区分大小写
select e.empno,replace(e.ename,'S','J') from emp e;
十二、去除空格的函数
trim 去除字符串2边的空格
ltrim 去除字符串左边的空格 (left)
rtrim 去除字符串右边的空格 (right)

十三、日期类型
to_date:(把字符串转换成日期的函数)
to_date(要转换成日期的字符串, 转换格式)
select to_date('2017-04-20 14:30:12','yyyy-mm-dd HH24:mi:ss') from dual;
to_char() (可以把日期或数字转换成字符串)
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss:SSSS') from dual;
select to_char(1234.5, '$9999D9') from dual;

--查询今天是今年的多少天
select to_char(sysdate, 'DDD') from dual;
--查询当月的多少天
select to_char(sysdate, 'DD') from dual;
--查询这个星期的第多少天
select to_char(sysdate, 'D') from dual;

to_number--把字符数字 转换成数字

计算2个日期之间相差的天数
select trunc(sysdate-hiredate) from dual;
--当前日期前5年的时间
select sysdate, sysdate - interval '5' year from dual;
--当前日期前5个月的日期
select sysdate, sysdate - interval '5' month from dual;

months_between 返回2个日期之间相差的月数

add_months --在一个日期基础上增加若干个月
select add_months(sysdate, 2) from dual;
select add_months(sysdate, -2) from dual;
last_day--返回当月的最后一天
select to_char(last_day(sysdate), 'yyyy-mm-dd') from dual;

十四、查询记录总数
select count(*) from 表名
select count(*) from emp;
select count(1) from emp;
select count(comm) from emp; //只会统计comm != null 的 记录
1.求最大工资的员工
select max(sal) from emp where sal is not null;
2:求最小值的数据
select min(列名) from 表名
3:求和
select sum(列名) from 表名
4:求平均值
select avg(列名) from 表名
5.连合查询,求值的字段必须是数值类型的字段
select avg(sal),sum(sal),max(sal),min(sal) from emp;

6:分组查询
--查询出每个部门的平均工资(按部门分组)
select floor(avg(sal)),deptno from emp group by deptno;
--查询每个部门的总工资和,平均工资,最高工资
select floor(avg(sal)) as 平均工资,sum(sal) 总工资, max(sal) 最高工资,deptno from emp group by deptno;
--查询每个部门,每个工作的总工资和
select sum(sal) 总工资, deptno, job from emp group by deptno,job
--查询出每个部门,每个工种的总人数
select count(1),deptno,job from emp group by deptno,job;
--查询每个部门的员工数
select count(1),deptno from emp group by deptno;

十五、列的操作
1.新增列
ALTER TABLE (表名) ADD (列名 数据类型);
alter table t_test add tname nvarchar2(20);

2.改某个表某个列的数据类型
ALTER TABLE (表名) MODIFY (列名 数据类型);
alter table t_test modify tname nvarchar2(20);

3.更改列名
ALTER TABLE (表名) RENAME COLUMN (当前列名) TO (新列名); /////不需要括号
alter table t_test rename COLUMN tname to tname2

4.删除某列
ALTER TABLE (表名) DROP COLUMN (列名);
alter table t_test drop COLUMN tname2

5.重命名表名
ALTER TABLE (当前表名) RENAME TO (新表名);
alter table t_test rename to t_test2;

oracle复习(二)的更多相关文章

  1. Oracle复习思路

    目录 Oracle复习 题型 复习大纲 附录 SQL题目一 SQL题目二 SQL题目三 SQL题目四 SQL题目五 SQL题目六 Oracle复习 题型 选择题15题 每题2分,共30分 判断题10题 ...

  2. Oracle GoldenGate 二、配置和使用

    Oracle GoldenGate 二.配置和使用 配置和使用GoldenGate的步骤 1 在源端和目标端配置数据库支持GoldenGate 2 在源端和目标端创建和配置GoldenGate实例 3 ...

  3. 7.26实习培训日志-Oracle SQL(二)

    Oracle SQL(二) 条件表达式 CASE 语句 或者DECODE 函数,两者均可实现 IF-THEN-ELSE 的逻辑,相比较而言,DECODE 更加简洁 SELECT last_name , ...

  4. Oracle笔记二

    一.数据库语言分类  二.DML之数据插入 把一个表中的数据查询出来插入另外一个表中. create table student(id number,name varchar2(20),age num ...

  5. 26、Oracle(二)

    1)掌握多行函数与分组操作 2)掌握多表查询与子查询 3)理解集合查询与掌握Oracle分页语法 4)理解创建.修改和删除表和表约束 --------------------------------- ...

  6. oracle复习(一)

    一.系统操作cmd->sqlplus / as sysdba; //以管理员身份登录数据库alter user system account unlock; //解锁用户systemalter ...

  7. Oracle(二)在 Mysql 的基础上学习 Oracle

    毕竟我是先学的mysql,对数据库的一切认知都会有一个先入为主的思想在里面,如果不搞清楚其中的异同,我感觉Oracle我是学不会 了,甚至会把它们混淆.那么,不会mysql的没必要往下看了. 下边第一 ...

  8. Java基础——Oracle(二)

    一.Oracle 中的几个服务 1.OracleDBConsoleorcl 进程:nmesrvc.exe oem控制台服务进程,dba用.Oracle Enterprise Manager(Oracl ...

  9. Oracle(二)SELECT语句执行顺序

    转载自:小强斋太-Study Notes,原文链接 从join on和where执行顺序认识T-SQL查询处理执行顺序 目录 一.样例 二.SELECT语句的处理过程 1. FROM阶段 2. WHE ...

随机推荐

  1. 20175234 数据库MySQL(课下作业)

    20175234 数据库MySQL(课下作业) 内容: 1.下载附件中的world.sql.zip, 参考http://www.cnblogs.com/rocedu/p/6371315.html#SE ...

  2. 异步操作之 Promise 和 Async await 用法进阶

    ES6 提供的 Promise 方法和 ES7 提供的 Async/Await 语法糖都可以更好解决多层回调问题, 详细用法可参考:https://www.cnblogs.com/cckui/p/99 ...

  3. 如果IBM再给我一次实习机会

    2014年,我拿到了IBM斯图加特R&D的实习机会.在连续被索尼和博世拒掉之后,这个实习对我来说弥足珍贵.我学的是通信专业,在这之前与编程相关的活动只有一学期的安卓Lab,还是靠抱队友大腿才及 ...

  4. 【博客迁移】hyrepo.com

    博客迁移至 www.hyrepo.com

  5. SAI窗口无法移动

    昨天开SAI遇到了一个很奇怪的问题,改变了双屏的位置后SAI的窗口不能移动两边也有黑边,貌似是这样,标题栏只能进行上下改变窗口大小,不能移动窗体 问题是这样出现的:把任务栏解除锁定拖到侧边就会这样 解 ...

  6. log4j打印堆栈信息

    原文地址:https://blog.csdn.net/xianyu_0418/article/details/6043174 大家都知道,网站在运行的过程中,打印必要的log对记录网站的运行情况.从而 ...

  7. Python-生成器_监听文件输入的例子_37

    def tail(filename): f = open(filename,encoding='utf-8') while True: line = f.readline() if line.stri ...

  8. 利用tushare进行对兴业银行股价的爬取,并使用numpy进行分析

    import sysimport tushare as tsimport numpy as npdata=ts.get_h_data('601066')print(data)#读出兴业银行7列数据da ...

  9. PHP PSR代码规范

    转载: https://www.awaimai.com/916.html PSR是PHP通用性框架小组 (PHP Framework Interop Group) 制定的PHP代码编写格式规范,是PH ...

  10. [转帖]Windows平台卸载Oracle的办法

    1.首先打开服务:选中此电脑->点击右键->选择管理->选择服务和应用程序->服务 在右边查看并停止以 oracle开头的服务(选中正在运行的以oracle开头的服务-> ...