oracle 默认隔离等级是:读已提交。

查询锁定,防止另外用户更新:

select * from books for update;

当前用户更新之后,另外用户可以更改。

01、表连接

假定from子句中从左到右两个表分别为A,B表。

内连接:选取A、B表的完全匹配的集合,两表交集:

select empno,ename,emp.deptno A,dept.deptno B,dname from emp inner join dept on emp.deptno=dept.deptno;

左外连:选取A表全部以及A、B表交集

select dname,dept.deptno A,emp.deptno B,empno,ename from dept left join emp on dept.deptno=emp.deptno;

右外连:选取B表全部以及A、B表交集

select empno,ename,emp.deptno A,dept.deptno B,dname from emp right join dept on emp.deptno=dept.deptno;

02、表联合

整合结果集并消除重复行:

select empno,ename from emp

union

select deptno,dname from dept;

03、空值

select empno,ename,nvl(comm,0) from emp;      --正确,comm与0类型相同

select empno,ename,nvl(comm,'空值') from emp; --错误,comm与'空值'类型不同

select empno,ename,comm from emp where comm is null;

select empno,ename,comm from emp where comm is not null;

04、排序

select * from emp order by empno,asc;

select * from dept order by deptno desc;

05、消除重复数据

select distinct deptno from emp;

06、模糊查询

select ename from emp where ename like '%K';

_表示一个字符,%表示一个或多个字符

07、分组

select deptno, avg(sal) from emp group by deptno;       --分组求出平均薪水

select deptno, avg(sal) from emp group by deptno, job;  --组合分组

select deptno, avg(sal) from emp group by deptno having avg(sal) > 2000;

group by 后面的字段,可以不出现在select后面;

select 后面的字段,如果没有出现在聚集函数里,就必须出现在group by后面。

group by 分组过滤要使用having。

08、聚集函数

select ename, max(sal) from emp;

这条语句错误:max只能有一个值,只能选取一行,但是等于max值的记录可能有好几个,无法正确匹配,所以应该使用子查询:

select ename from emp where sal = (select max(sal) from emp);

聚集函数不能做为条件出现在where子句的后边:

select deptno,sum(sal) from emp where sum(sa

oracle查询等于外的,Oracle 查询、更新基本操作相关推荐

  1. oracle 不等于某类,Oracle如何查询不等于某数值

    前言 今天在使用Oracle查询"不等于"的时候,发现得到的数据与期望中的不一样,进一步查找资料才有发现. 1.Oracle的不等于 在Oracle中,"<> ...

  2. Oracle入门--水表项目(单表查询,链接查询,左右外连接,子查询,分页查询)(3)

    水表项目建表 1.1.1 分析 1.1.2 SQL实现 表结构 -- <自来水公司收费系统> -- 1 业主类型表 create table t_ownertype(id number p ...

  3. oracle 列级外键,Oracle 中的外键与锁

    文章目录算是接上篇吧... 内容主要来自 Oracle 官方文档,自己重新画了下图.图中配色来自大神 draveness 的文章,小清新的配色真是美美哒.看来我在学画图的路上还要修炼很久啊..... ...

  4. 删除oracle所有表外键,Oracle中查询、禁用、起用、删除表外键

    Oracle中查询.禁用.启用.删除表外键 1.查询所有表的外键: select table_name, constraint_name from user_constraints where con ...

  5. oracle 列级外键,Oracle外键列上是否需要索引?

    外键列上缺少索引会带来两个问题,限制并发性.影响性能.而这两个问题中的任意一个都可能会造成严重性能问题. 无论是Or 外键列上缺少索引会带来两个问题,限制并发性.影响性能.而这两个问题中的任意一个都可 ...

  6. 清空oracle表数据 外键,oracle清空所有表数据

    方法: 1. 删除所有外键约束 2. drop表 3. 添加外键约束 代码使用powerdesign生成 /*============================================= ...

  7. oracle内与外连接,Oracle (内连接)与(外连接)区别

    表stu id name 1, Jack 2, Tom 3, Kity 4, nono 表exam id grade 1, 56 2, 76 11, 89 内连接(显示两表匹配的id) select ...

  8. 多表查询:内连接查询、外连接查询、子查询、自关联查询

    1. 多表查询数据准备 USE liulu; -- 创建users表 CREATE TABLE users(id INT PRIMARY KEY AUTO_INCREMENT, -- 用户idNAME ...

  9. Oracle数据库中的级联查询、级联删除、级联更新操作教程

    这里整理了Oracle中的三种级联操作,其中Oracle定义外健的时候可以定义级联删除,但是没有级联修改的语法,当然可以用触发器实现,下面我们详细来看Oracle数据库中的级联查询.级联删除.级联更新 ...

最新文章

  1. R语言数学函数:abs绝对值、sqrt平方根、ceiling向上近似整数、floor向下近似整数、trunc去除小数部分、round近似到指定小数位、signif近似到有效数字、三角函数、指数、对数
  2. CAN设备多机联网之总线容抗注意事项
  3. mysql学习--基本使用
  4. recv、recvfrom、recvmsg函数
  5. React Native之提示Unable to load script from assets ‘index.android.bundle
  6. Vue之splice和push
  7. 设计模式的Java 8 Lambda表达式-策略设计模式
  8. php根本自学不了,PHP开发自学还是培训?
  9. thinkphp一句话疑难解决笔记
  10. Hibernate学习3—映射对象标识符(OID)
  11. Matplotlib 中文用户指南 3.7 变换教程
  12. 气象数据产品下载网址汇总
  13. linux sound usb声卡,openwrt上用usb声卡听音乐
  14. 【阅读分享】《暗时间》——放弃学习,寸步难行
  15. Ubuntu系统下 .7z 文件压缩解压命令
  16. 实时摄像头流传输(直播)
  17. 湫湫系列故事——减肥记Ⅰ
  18. 20189215 2018-2019-2 《密码与安全新技术专题》第11周作业
  19. Zero-shot Learning / One-shot Learning
  20. 金链盟中国区块链应用大赛正式启动,200万奖金将花落谁家?

热门文章

  1. 打开黑色_表哥出差带回来一箱苹果,打开后发现是黑色的,大家表示都没见过...
  2. 如何反映两条曲线的拟合精度_【隆旅干货分享】差压传感器的应用及精度特性分析...
  3. 【uni-app】rich-text 无法处理 video 的解决办法
  4. Spring Cloud:connect time out
  5. 怎么可以用计算机弄出表白数字,怎么用数字表白 表白爱情数字大全
  6. linux下执行shell脚本文件,Linux下使用shell脚本自动执行脚本文件
  7. php输出查询mysql中文乱码_解决php mysql查询插入中文乱码问题
  8. gpio 树莓派3a+_树莓派4正式发布!硬件性能大提升:CPU提升3倍,支持USB3.0、蓝牙5.0、千兆以太网、4G LPDDR4、H.265...
  9. android餐厅管理系统,基于Android的餐厅管理系统的设计与实现
  10. java stop和int,JAVA并发任务中止的isinterrupted,interupted()