Oracle基础篇--03DML语言
1.数据准备:

2.新增语句
【语法2】
INSERT INTO <table_name> <SELECT 语句>;
【示例2】
--创建table_test
create table test_table as select * from emp where 1=2;
--插入工资大于2000的员工数据
insert into test_table select * from emp where sal>2000;

3.更新语句

4.删除语句
delete from emp e where 1=1 and e.empno = '1111';
5.1 dual 伪表,是一个虚拟表,只是一个为了构成select语法
--查询序列下一位值
select [序列名].nextval from dual;
--查询当前的用户
select user from dual;
--查询当前系统时间
select to_char(sysdate,'yyyy/mm/dd hh24:mi:ss') from dual;
5.2 rowid 伪列,是一个数据库里面的唯一的物理地址,是插入一条记录时创建的地址。同一条记录,在不同的查询里的地址是相同的。
select e.*,e.rowid from emp e where 1=1 and e.ename = 'KING';

5.3 rownum ,是一个逻辑次序号,查询的时候生产,每次查询都会不同,并不是真实存在的编号。从1开始
select rownum,e.* from emp e where 1=1 and e.sal > 2000.00 and rownum <3;

使用rownum实现查询分页:
5.4 等值查询
select * from emp e,dept d where 1=1 and
e.deptno = d.deptno;
5.5 左外/右外连接查询
select e.empno,e.deptno,d.deptno,d.dname from emp e left join dept d
on e.deptno = d.deptno
where 1=1 and e.sal > 2000;
5.6 分组查询
【示例1】
--查每个部门的平均工资
select d.deptno,d.dname,avg(e.sal) from emp e,dept d
where 1=1 and e.deptno = d.deptno
group by d.deptno,d.dname;
【示例2】
----查询平均工资大于2000的部门,并按照平均工资降序排序
select d.deptno,d.dname,avg(e.sal) from emp e,dept d
where 1=1 and e.deptno = d.deptno
having avg(e.sal) > 2000
group by d.deptno,d.dname;
【示例3】
--查询除了20部门以外,平均工资大于2000的部门
select d.deptno,d.dname,avg(e.sal) from emp e,dept d
where 1=1 and e.deptno = d.deptno
and e.deptno <> 20
having avg(e.sal) > 2000
group by d.deptno,d.dname;
5.7 模糊查询 like
【示例】
--查询部门名称第三个字符为‘C’的部门信息
select * from dept d
where 1=1 and d.dname like '__C%';

5.8 子查询
【示例】
以上只是一些总结,后续如果有新的内容,会继续补充进来。如果有发现sql有更优的查询,也欢迎和我交流。后续,我查找一下查用的查询联系题目作为巩固练习(附上答案)
Oracle基础篇--03DML语言的更多相关文章
- Oracle基础篇--00引言
今天开始,复习oracle基础.主要是以前培训的时候的文档作为结构来梳理知识点,主要目的是把Oracle基础打的扎实点.后面要转做后台开发,或者工作中需要用到数据库知识时也不至于临时抱佛脚. 一直以来 ...
- Oracle基础篇--01数据库控制语言DCL
数据库控制语言,是用户对数据的权限控制语言. 通过GRANT语句进行赋权,通过REVOKE撤回权限.数据库的权限包括2种,一种是数据库系统权限,一种是数据库对象权限.在控制语言里面,存在2个概念, 1 ...
- SQL必学必会笔记 —— 基础篇
基础篇 SQL语言按照功能划分 DDL(DataDefinitionLanguage),也就是数据定义语言,它用来定义我们的数据库对象,包括 数据库.数据表和列.通过使用DDL,可以创建,删除和修改数 ...
- oracle(sql)基础篇系列(五)——PLSQL、游标、存储过程、触发器
PL/SQL PL/SQL 简介 每一种数据库都有这样的一种语言,PL/SQL 是在Oracle里面的一种编程语言,在Oracle内部使用的编程语言.我们知道SQL语言是没有分支和循环的,而PL语 ...
- oracle(sql)基础篇系列(五)——PLSQL、游标、存储过程、触发器
PL/SQL PL/SQL 简介 每一种数据库都有这样的一种语言,PL/SQL 是在Oracle里面的一种编程语言,在Oracle内部使用的编程语言.我们知道SQL语言是没有分支和循环的,而PL语言是 ...
- [原]Java修炼 之 基础篇(二)Java语言构成
上次的博文中Java修炼 之 基础篇(一)Java语言特性我们介绍了一下Java语言的几个特性,今天我们介绍一下Java语言的构成. 所谓的Java构成,主要是指Java运行环境的组成, ...
- Oracle面试题(基础篇)
1. Oracle跟SQL Server 2005的区别? 宏观上: 1). 最大的区别在于平台,oracle可以运行在不同的平台上,sql server只能运行在windows平台上,由于windo ...
- C语言读取写入CSV文件 [一]基础篇
本系列文章目录 [一] 基础篇 [二] 进阶篇--写入CSV [三] 进阶篇--读取CSV 什么是CSV? CSV 是一种以纯文本形式存储的表格数据,具体介绍如下(来自维基百科): 逗号分隔值(Com ...
- 大数据系列博客之 --- 深入简出 Shell 脚本语言(基础篇)
首先声明,此系列shell系列博客分为四篇发布,分别是: 基础篇:https://www.cnblogs.com/lsy131479/p/9914747.html 提升篇:https://www.cn ...
随机推荐
- STL之priority_queue(优先队列)
priority_queue是一个容器适配器,在这个容器里第一个数据元素是最大的.它的使用场景是什么样:如果12306抢票,为什么黄牛能抢这么多票,感觉12306那边的请求队列是一个优先队列,黄牛的请 ...
- JavaScript相关知识和经验的碎片化记录
1.JavaScript提示“未结束的字符串常量”错误解决方法 1.1 JavaScript引用时,使用的字符语言不一致. 比如:<script type=”text/javascript ...
- Google androd性能优化经典
2015年伊始,Google发布了关于Android性能优化典范的专题,一共16个短视频,每个3-5分钟,帮助开发者创建更快更优秀的Android App.课程专题不仅仅介绍了Android系统中有关 ...
- json序列化.xml序列化.图片转base64.base64转图片.生成缩略图.IEnumerable<TResult> Select<TSource, TResult>做数据转换的五种方式
JSON序列化 /// <summary> /// JSON序列化 /// </summary> public static class SPDBJsonConvert { ...
- JavaScript面向切面编程入门
来源极客网学习视频 关键词Javascript AOP编程 例子1: function test() { alert(2); } //理解,所谓的传入一个"回调",该怎样设计bef ...
- Pandas——修改DataFrame列名
#生成一个数据框 import pandas as pd a = pd.DataFrame({'a':[1,2,3], 'b':[4,5,6], 'c':[7,8,9]}) #直接修改:缺点必须写明每 ...
- MapReduce Kmeans算法含测试数据
使用时,需要修改K值,args值 运行流程: 先初始化中心点->map中和距离最近的中心点生成一对传入reduce->reduce中把相同key值的存到一起->更新中心点,计算和上一 ...
- 【bzoj2242】: [SDOI2011]计算器 数论-快速幂-扩展欧几里得-BSGS
[bzoj2242]: [SDOI2011]计算器 1.快速幂 2.扩展欧几里得(费马小定理) 3.BSGS /* http://www.cnblogs.com/karl07/ */ #include ...
- Sum of LCM (lcmsum)
题目 [题目描述] 对于 $ A_1, A_2, \ldots, A_N $ ,求$\sum_{i = 1}^N \sum_{j = 1}^N \mathrm{lcm}(A_i, A_j)$ 的值. ...
- vue_cli安装
一. 安装 node.js 首先需要安装node环境,可以直接到中文官网http://nodejs.cn/下载安装包. 只是这样安装的 node 是固定版本的,如果需要多版本的 node,可以使用 n ...