【SQL 学习】INTERSECT,MINUS ,

SQL> select product_id,product_type_id ,name
  2  from products
  3  intersect               ---返回两查询结果共有的数据行
  4  select prd_id,prd_type_id ,name
  5  from more_products;

PRODUCT_ID PRODUCT_TYPE_ID NAME
---------- --------------- --------------------            
         1               1 Modern Science    
         2               1 Chemistry                                   

SQL> select product_id,product_type_id ,name
  2  from products
  3  minus     ----返回第一个查询的结果减去第二个查询的结果后剩余的行。
  4  select prd_id,prd_type_id ,name
  5  from more_products;

PRODUCT_ID PRODUCT_TYPE_ID NAME                
---------- --------------- ---------------------
         3               2 Supernova
         4               2 Tank War               
         5               2 Z Files               
         6               2 2412: The Return                       
         7               3 Space Force 9               
         8               3 From Another Planet              
         9               4 Classical Music              
        10               4 Pop 3                     
        11               4 Creative Yell    
        12                 My Front Line              

已选择10行。

SQL> select product_id,product_type_id ,nam
  2  from product_changes;

PRODUCT_ID PRODUCT_TYPE_ID NAME    
---------- --------------- -----------------
         1               1 Modern Science
         2               1 New Chemistry
         3               1 Supernova                        
        13               2 Lunar Landing                              
        14               2 Submarine                                  
        15               2 Airplane                        
已选择6行。

------组合使用集合操作符,由于优先级一样,要使用括号来指示正确的顺序。

SQL> (
  2  select product_id,product_type_id ,name
  3  from products
  4  union
  5  select prd_id,prd_type_id ,name
  6  from more_products)
  7  intersect
  8  select product_id,product_type_id ,name
  9  from product_changes;

PRODUCT_ID PRODUCT_TYPE_ID NAME  
---------- --------------- ----------------
         1               1 Modern Science

SQL> select product_id,product_type_id ,name
  2  from products
  3  union
  4  (
  5  select prd_id,prd_type_id ,name
  6  from more_products
  7  intersect
  8  select product_id,product_type_id ,name
  9  from product_changes);

PRODUCT_ID PRODUCT_TYPE_ID NAME                      
---------- --------------- ----------------------
         1               1 Modern Science
         2               1 Chemistry
         3               2 Supernova
         4               2 Tank War
         5               2 Z Files    
         6               2 2412: The Return
         7               3 Space Force 9
         8               3 From Another Planet
         9               4 Classical Music
        10               4 Pop 3
        11               4 Creative Yell
        12                 My Front Line

已选择12行。

时间: 2024-11-01 23:04:13

【SQL 学习】INTERSECT,MINUS ,的相关文章

【SQL 学习】minus 和intsect 的排序方式!

前面的文章说 minus  和intsect 的排序方式和union的排序方式是一样的,这里做一个实验验证一下: SQL> select id ,name ,text from t   2  minus   3  select id ,name ,text from t1; 未选定行 执行计划 ---------------------------------------------------------- Plan hash value: 452211453  ---------------

sql学习大全

学会数据库是很实用D~~记录一些常用的sql语句...有入门有提高有见都没见过的...好全...收藏下...其实一般用的就 学会数据库是很实用D~~记录一些常用的sql语句...有入门有提高有见都没见过的...好全...收藏下...其实一般用的就是查询,插入,删除等语句而已....但学学存储过程是好事...以后数据方面的东西就不用在程序里搞喽..而且程序与数据库只要一个来回通讯就可以搞定所有数据的操作.... 一.基础 1.说明:创建数据库 Create DATABASE database-na

《SQL学习指南(第2版)(修订版)》——1.2 什么是SQL

1.2 什么是SQL SQL学习指南(第2版)(修订版)根据Codd对关系模型的定义,他提出一种名为DSL/Alpha的语言,用于操控关系表的数据.在Codd的论文发表后不久,IBM建立了一个研究小组来根据他的想法构建原型.该小组创建了一个DSL/Alpha的简化版本,即SQUARE,然后通过对SQUARE的改进,将之发展为SEQUEL语言,并最终命名为SQL. 今天SQL已经发展到了中年期(唉,就像作者一样),在这期间它经历了大量修改.在20世纪80年代中期,美国国家标准组织(ANSI)开始制

《SQL学习指南(第2版)(修订版)》——第1章 背景知识

第1章 背景知识 SQL学习指南(第2版)(修订版)在我们开始学习本书的内容时,先了解一些数据库方面的基本概念及计算机数据存储和检索的发展史是十分有益的. 本文仅用于学习和交流目的,不代表异步社区观点.非商业转载请注明作译者.出处,并保留本文的原始链接.

《SQL学习指南(第2版)(修订版)》———1.4 内容前瞻

1.4 内容前瞻 SQL学习指南(第2版)(修订版)接下来4章的主要目标是简介SQL数据语句,重点放在select语句的3个主要子句上.此外还提供了许多银行业务方面的实例(在下一章中介绍),本书中所有的示例都围绕它们展开.这是因为使用同一个已熟悉的数据库作为例子,将会更容易地掌握问题的核心,而不是每次都需要了解所使用的表.如果读者对总是使用同样的表集合感到厌倦,那么可以在示例数据库中自由增加新表,或者干脆建立自己的试验数据库. 在帮助读者牢固掌握了基础知识后,剩余的章节将会深入讨论更多的概念,它

《SQL学习指南(第2版)(修订版)》——1.3 什么是MySQL

1.3 什么是MySQL SQL学习指南(第2版)(修订版)商业级关系数据库已经存在20多年了,几种最成熟和流行的商业产品包括: 甲骨文公司的Oracle Database:Microsoft公司的SQL Server:IBM公司的DB2 Universal Database:Sybase公司的Sybase Adaptive Server.这些数据库服务器的功能十分类似,尽管它们中的一些擅长处理大容量和高流量的数据库,而另一些对于处理对象.大文件或XML文档等更为适合,所有这些服务器都遵从了最新

PL/SQL学习笔记(索引贴)

我前段时间写了T-SQL学习笔记得到了许多朋友的支持当然也有一些朋友提出了质疑,在此一并表示感谢最近项目中用到Oracle,于是萌生了写PL/SQL学习笔记的念头.同时也希望得到大家的支持或批评.并非常希望能和朋友们一起讨论相关知识. 这是一个有一点T-SQL基础的.刚入门者的学习笔记,以Oracle  10g为讲解对象没有涉及到高级话题如果对哪篇文章有疑问,可以在文章下留言我会尽快回复的 下面我为这个系列文章做一个索引 一: 常量变量及数据类型初步       1:常量变量       2:数

【SQL 学习】UNION 的排序方式!

(感谢dingjun123版主 为本文提供帮助) union怎么排序? 许多人肯定会说 根据第一字段来排序,呵呵,这个答案能得50分!考虑到如果select的第一个字段是重复时,会怎样?看一个测试! SQL> select 1 id ,'a1' val ,'b1' text from dual   2  union   3  select 1 ,'a1' ,'b3' from dual   4  union   5  select 1 ,'a1' ,'b2' from dual;       

Oracle之PL/SQL学习笔记

自己在学习Oracle是做的笔记及实验代码记录,内容挺全的,也挺详细,发篇博文分享给需要的朋友,共有1w多字的学习笔记吧.是以前做的,一直在压箱底,今天拿出来整理了一下,给大家分享,有不足之处还望大家批评指正.   PL/SQL定义:PL/SQL是由Oracle开发,专门用于Oracle的程序设计语言. PL---Procedural Language. SQL-Structure QueryLanguage.PL/SQL包括过程化语句和SQL语句     PL/SQL的单位:块. 一个块中可以