`
凯旋人生
  • 浏览: 62878 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

ORACLE复习之SQL99

阅读更多

SQL92语法
select ename,dname,grade from emp e,dept d, salgrade s
where e.deptno = d.deptno and e.sal between s.lowsal and s.hisal and //连接条件
job <> 'CLERK'; //过滤条件

cross join 是笛卡儿乘积 就是一张表的行数乘以另一张表的行数
left (outer) join 左外连接 第一张表的连接列在第二张表中没有匹配是,第二张表中的值返回null
right join 右外连接 第二张表的连接列在第一张表中没有匹配是,第一张表中的值返回null
full join  全外连接 返回两张表中的行 left join+right join
inner join 内连只返回两张表连接列的匹配项

cross join 笛卡儿乘积
sql92:
select ename,dname from emp,dept;
sql99: cross join 交叉连接--迪科尔承接
select ename,dnam e from emp cross join dept;

ENAME     DNAME
SMITH     ACCOUNTING
ALLEN     ACCOUNTING
WARD     ACCOUNTING
JONES     ACCOUNTING
MARTIN     ACCOUNTING
BLAKE     ACCOUNTING
CLARK     ACCOUNTING
SCOTT     ACCOUNTING
KING     ACCOUNTING
TURNER     ACCOUNTING
ADAMS     ACCOUNTING
JAMES     ACCOUNTING
FORD     ACCOUNTING
MILLER     ACCOUNTING
SMITH     RESEARCH
ALLEN     RESEARCH
WARD     RESEARCH
JONES     RESEARCH
MARTIN     RESEARCH
BLAKE     RESEARCH
CLARK     RESEARCH
SCOTT     RESEARCH
KING     RESEARCH
TURNER     RESEARCH

等值连接
sql92:
select ename,dname from emp,dept where emp.deptno=dept.deptno;
sql99:
select ename,dname from emp join dept on (emp.deptno=dept.deptno);
也可以用using关键字简写(不推荐,这里有很多假设)
select ename,dname from emp join dept usring(deptno);

不等值连接
sql99:
select ename from emp e join salgrade s on(e.sal between s.losal and s.hisal);
三表连接
select ename,dname,grade from
emp e join dept d on (e.deptno = d.deptno)       //连接第一章表
join salgrade s on (e.sal between s.losal and s.hisal)//连接第二章表
where ename not like '_A%';
求人名字和他经理人名字
select e1.ename, e2.ename from emp e1
join emp e2 on (e1.mgr= e2.empno);
内连接 因为king没有上司mgrno所以不显示
ENAME     ENAME
FORD     JONES
SCOTT     JONES
JAMES     BLAKE
TURNER     BLAKE
MARTIN     BLAKE
WARD     BLAKE
ALLEN     BLAKE
MILLER     CLARK
ADAMS     SCOTT
CLARK     KING
BLAKE     KING
JONES     KING
SMITH   FORD
用左外连接
select e1.ename, e2.ename from emp e1
left join emp e2 on (e1.mgr= e2.empno);

ENAME     ENAME
FORD     JONES
SCOTT     JONES
JAMES     BLAKE
TURNER     BLAKE
MARTIN     BLAKE
WARD     BLAKE
ALLEN     BLAKE
MILLER     CLARK
ADAMS     SCOTT
CLARK     KING
BLAKE     KING
JONES     KING
SMITH     FORD
KING     

select ename,dname from emp e
join dept d on(e.deptno = d.deptno);
d表中有个部门在e表中没人
ENAME     DNAME
SMITH     RESEARCH
ALLEN     SALES
WARD     SALES
JONES     RESEARCH
MARTIN     SALES
BLAKE     SALES
CLARK     ACCOUNTING
SCOTT     RESEARCH
KING     ACCOUNTING
TURNER     SALES
ADAMS     RESEARCH
JAMES     SALES
FORD     RESEARCH
MILLER     ACCOUNTING
已选择14行。

select ename,dname from emp e
right join dept d on(e.deptno = d.deptno);

ENAME     DNAME
SMITH     RESEARCH
ALLEN     SALES
WARD     SALES
JONES     RESEARCH
MARTIN     SALES
BLAKE     SALES
CLARK     ACCOUNTING
SCOTT     RESEARCH
KING     ACCOUNTING
TURNER     SALES
ADAMS     RESEARCH
JAMES     SALES
FORD     RESEARCH
MILLER     ACCOUNTING
      OPERATIONS
已选择15行。

分享到:
评论

相关推荐

    Oracle常用SQL语句复习

    本篇将基于"Oracle常用SQL语句复习"这一主题,深入探讨Oracle SQL的基本语法和常用操作,帮助读者巩固和提升Oracle数据库操作技能。 1. **数据查询基础** - `SELECT`语句是SQL中最基本的查询命令,用于从一个或多...

    oracle复习及与sql server的比较等

    本复习将深入探讨Oracle的关键知识点,并将其与SQL Server进行对比,以便更好地理解和运用。 首先,Oracle的安装配置是使用Oracle数据库的第一步。安装过程中,你需要选择适合的软件版本(如Oracle Database 12c或...

    Oracle复习考试题

    以下是从“Oracle复习考试题”中提炼出的关键知识点,旨在帮助考生全面复习,确保对Oracle核心概念和技术有深入的理解。 ### 一、Oracle基础知识 1. **Oracle数据库概述**:理解Oracle数据库系统的架构,包括实例...

    Introduction To ORACLE9i:SQL3

    - **OCP认证**:Oracle Certified Professional,是Oracle公司为专业人士设计的一系列认证之一,涵盖了数据库管理、应用程序开发等多个领域,其中SQL知识是基础且重要的部分。 - **认证准备**:本书不仅提供了理论...

    oracle sql 大全(三个文档)

    复习Oracle SQL时,这三个文档将形成一个全面的学习路径:从数据库的基础概念开始,逐步过渡到高级特性和实际应用。对于初学者,"Oracle8i_9i数据库基础.pdf"提供了一个良好的起点;对于有一定经验的用户,"oracle1....

    oracle复习笔记03

    根据提供的文件信息,我们可以梳理出一系列关于Oracle数据库的重要知识点,主要涵盖了数据类型、PL/SQL控制结构、游标以及过程等内容。以下是对这些知识点的详细解释: ### 数据类型 1. **VARCHAR2** - `VARCHAR2...

    Oracle 复习用脚本

    ### Oracle复习知识点详解 #### 一、创建与管理数据库对象 **1. 创建表空间** 在Oracle中,数据存储在表空间中。表空间由一个或多个数据文件组成,是逻辑存储单元。例如: ```sql createtime EXAM_DATAFILE 'C:\...

    Oracle基本sql语句

    Oracle数据库是全球最广泛使用的数据库管理系统之一,它遵循SQL标准,提供了一套强大的SQL语句,使得数据库操作变得高效和灵活。在Oracle数据库中,SQL语句是与数据库进行交互的主要方式。本文将总结一些Oracle基本...

    oracle复习资料详解,ppt格式

    **Oracle复习资料详解** Oracle是全球最广泛使用的数据库管理系统之一,尤其在企业级应用中占据主导地位。本复习资料以PPT格式详细介绍了Oracle数据库的关键概念和技术,旨在帮助学习者全面掌握Oracle的相关知识。 ...

    Pro Oracle SQL-成为SQL语言编写专家

    ### Pro Oracle SQL - 成为SQL语言编写专家 #### 核心概念回顾与SQL语言能力介绍 本书《Pro Oracle SQL》由Karen Morton、Kerry Osborne、Robyn Sands、Riyaj Shamsudeen 和 Jared Still 共同撰写,旨在帮助读者...

    oracle复习

    综上所述,Oracle复习涵盖的内容广泛且深入,从基础的SQL操作到复杂的数据库管理、性能优化和高可用性设置。无论是初学者还是经验丰富的DBA,对这些知识点的掌握都是至关重要的。通过不断学习和实践,可以提升对...

    Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐)--详细书签版

    如果你对本章的例子的理解有任何困难,请一定花点时间复习Beginning Oracle SQL或者Oracle文档中的SQL Reference Guide。在本书中接下来的部分我们假设你已经很好地理解了5个核心SQL语句的基本构造:SELECT、INSERT...

    Oracle复习总结

    在复习Oracle时,我们需要深入理解其核心概念和技术,包括表连接方式、执行计划的查看、优化器策略、SQL监控与调整、索引的运用以及排序内存管理等。 1. **表连接方式**:Oracle支持多种连接方式,如哈希连接(Hash...

    《ORACLE数据库》复习汇总

    《ORACLE数据库》复习汇总是一份综合性的学习资料,涵盖了ORACLE数据库的关键概念和技术。这份复习汇总主要基于教材,旨在帮助学生系统性地理解和掌握ORACLE数据库的核心内容。 首先,Oracle版本及其发展史展示了...

    ORACLE复习纲要 杭电

    Oracle复习纲要主要涵盖了Oracle数据库的基础概念、管理、编程以及安全性等方面的知识。以下是对这些知识点的详细说明: 1. **Oracle实例和数据库结构**: - Oracle实例是运行在操作系统上的一组进程和内存结构,...

    Oracle面试复习(一)

    这篇“Oracle面试复习(一)”的博文可能涵盖了Oracle数据库的基础知识,以及如何在面试中有效地展示这些技能。以下是一些可能涉及的关键知识点: 1. **Oracle数据库简介**:Oracle是全球领先的数据库管理系统之一...

    ORACLE复习资料

    本复习资料主要涵盖了Oracle中的数据操作语言(DML)和过程化SQL(PL/SQL)的相关实例,这对于理解和掌握Oracle数据库的操作至关重要。 1. 数据操作语言(DML): DML是Oracle中用于插入、更新、删除和查询数据的...

    Oracle数据库Sql语句详解大全

    Oracle数据库Sql语句详解大全,提供给大家快速查询复习哦!

Global site tag (gtag.js) - Google Analytics