sql92和sql99的区别
sql92和sql99比较
1.功能方面:sql99支持的较多
2.可读性:sql99实现了连接条件和筛选条件的分离,因此可读性较高。
SQL92和SQL99都是用来表示多表的联合查询使用的,两者在开发中,具体使用哪一种都是可以的,但是在书写和阅读的过程中,具体表现在以下:
1、笛卡尔积中的区别
①SQL92中的笛卡尔积:select * from emp,dept②SQL99中的笛卡尔积:select * from emp cross join dept
2、等值连接方面的区别
①SQL92表示:select * from emp,dept where emp.deptno=dept.deptno②SQL99表示:select * from emp innner join dept on emp.deptno=dept.deptno
3、不等值连接方面
```java
①SQL92表示:select * from emp ,salgrade where emp.sal<=salgrade.hisal and emp.sal>=salgrade.losal②SQL99表示:select * from emp inner join dept on emp.deptno=dept.deptno where sal>2000
4、左外连接
①SQL表示:select * from emp ,dept where emp.deptno=dept.depetno(+)②SQL99表示:select * from emp left outer join dept on emp.deptno=dept.deptno
5、右外连接
①SQL92实现:select * from emp ,depet where emp.deptno = dept.deptno;②SQL99实现:select * from emp righ outer join dept on emp.deptno=dept.deptno
6、全完连接
①SQL92实现:select * from emp,dept where epm.deptno(+) = dept.dpetno(+)②SQL99实现:select * from emp full outer join dept on emp.deptno=dept.deptno;
7、自连接
①SQL92实现:select e1.*,e2.ename from emp e1,emp e2 where e1.deptno=e2.deptno②SQL99实现:select e1.*,e2.ename from emp e1 inner join emp e2 on e1.deptno=e2.deptno
8、在三表连接查询中
①SQL92实现:
select e.*,d.dname,c.cname from emp e,dept d,city cwhere (e.deptno=d.deptno and d.loc=c.cid and sal>2000) or (e.deptno=d.deptno and d.loc=c.cid and comm is not null) order by e.sal
②SQL99实现:select * from emp e inner join dept d on e.deptno = d.deptno inner join city c on d.loc =c.cidwhere e.sal>2000 or e.comm is not nullorder by e.sal
此外,SQL99中在内连接中还可以使用关键字:using
select * from emp inner join dept using(deptno)
部分转载自:
https://blog.csdn.net/wyqwilliam/article/details/103076797?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1.control
sql92和sql99的区别相关推荐
- 关于SQL92与SQL99语法的区别与PK
sql92语法 sql分类 1.笛卡尔积 (表乘表) 2.等值连接 表的连接条件使用"=" 3.非等值连接 表的连接条件使用">.>=. <.<= ...
- 数据库复习——笛卡尔积,等值连接,自连接,非等值连接,外连接的原理并用sql92和sql99表示
1.笛卡尔积: 假设两个表做笛卡尔积,就相当于A表中的每一行信息和B表中的所有信息进行映射,所形成的的新表,其他操作就是在此新表基础上进行查询操作. sql92: select * from A,B ...
- oracle sql 平均分配 分组_SQL学习二
训练大纲(第023天) 大家如果想快速有效的学习,思想核心是"以建立知识体系为核心",具体方法是"守破离".确保老师课堂上做的操作,反复练习直到熟练. 第41次 ...
- MySQL 基础 ———— 连接查询
引言 本篇文章承接<数据库与SQL语句>专栏,进入DQL的重要环节,可以说,这一部分的内容应该占据SQL语言的大部分使用场景. 本篇的连接查询知识,和后面的一些重要的查询知识总结,共同构成 ...
- MySQL基础学习笔记(带目录)
MySQL学习笔记 MySQL产品的介绍和安装 MySQL服务的启动和停止 MySQL服务的登陆和退出 MySQL的常见命令 MySQL的语法规范 MySQL基础查询 1.起别名 2. 去重disti ...
- Oracle笔记(操作Scott中的数据)
文章目录 1 数据库相关概念 2 数据库的发展阶段 3 Oracle相关介绍 3.1 软件相关介绍 3.2 软件目录结构介绍 3.3 软件原理 3.3.1 软件体系架构 3.3.2 本地网络服务配置 ...
- 学习MySQL看这一篇就够了
文章目录 整体大纲 1. 为什么要学习数据库 2. 数据库的相关概念 3. 数据库存储数据的特点 4. 初始MySQL 4.1 MySQL服务的登录和退出 4.2 MySQL的常见命令 4.3 MyS ...
- 【MySQL】数据库知识总结
一.了解SQL 1.SQL 有两个重要的标准,分别是 SQL92 和 SQL99,它们分别代表了 92 年和 99 年颁布的 SQL 标准 2.SQL 语言按照功能可以划分成以下的 4 个部分: (1 ...
- MySQL之连接查询+分页查询+联合查询
连接查询 sql92和sql99的区别:** sql99使用join关键字替代了之前的逗号,并且将连接条件和筛选条件进行了分离,减少语法出错的几率,提高阅读性 卡尔乘积现象:没有有效的连接条件 内连接 ...
- mysql从零基础到基础熟练
本文使用软件为:Mysql版本8.0.29,Navicat PreMium 15 第一章 mysql介绍 1.1什么是数据库 数据库:数据的仓库,database简称DB 介质:硬盘和内存,数据仓库的 ...
最新文章
- 从现在到未来50年,传感器将如何改变世界?
- NumPy Essentials 带注释源码 三、NumPy 数组使用
- JAVA Builder模式构建MAP/LIST的示例
- 直播预告丨揭秘神策数据销售方法论,一起向 Top Sales 迈进!
- 注意1:图像插值理论的理解
- style 里引用php变量,在VUE style中使用data中的变量的方法详解
- UTF-8 编码及检查其完整性
- struct 和typedef struct的区别
- 基于BlueZ 的BLE蓝牙开发
- HCIE Security 防火墙多出口选路 备考笔记(幕布)
- HTML基础用 表格做报表
- sqlserver卸载不完全导致安装失败
- html字体样式(有中文兼英文实例)
- JavaScript 进阶知识 - 特效篇(一)
- 多文件上传,大文件上传3、5个G,那都不是事
- 棋盘格相机标定图片拍摄方法
- 写了Bug,误执行 rm -fr /*,我删删删删库了,要跑路吗?
- 百度al的人体检测接口调用
- ERP系统的八大主要功能模块
- 地产“罗生门”:是世茂“不讲武德”,还是福晟“谎话连篇”?
热门文章
- 基础连接已关闭解决办法_解决|罗技蓝牙键盘连接ipad后打不出字?
- 《大话数据结构》学习笔记
- Java虚拟机类加载器--双亲委派模型
- Pandas DataFrame merge join concat append combin_first 使用demo
- Geolocation API
- [CF559C]Gerald and Giant Chess
- 【ZJOI 2018】 历史(lct)
- Matlab图像处理—锐化滤波器
- brew切换到清华源
- QEMU/KVM PCI Passthrough(82599ES) DPDK 网络性能测试