SQL查询】集合查询之INTERSECT

1  BLOG文档结构图

2  前言部分

2.1  导读和注意事项

各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~:

① 集合查询之INTERSECT的使用

Tips:

① 本文在itpub(http://blog.itpub.net/26736162)、博客园(http://www.cnblogs.com/lhrbest)和微信公众号(xiaomaimiaolhr)上有同步更新。

② 文章中用到的所有代码、相关软件、相关资料及本文的pdf版本都请前往小麦苗的云盘下载,小麦苗的云盘地址见:http://blog.itpub.net/26736162/viewspace-1624453/

③ 若网页文章代码格式有错乱,请下载pdf格式的文档来阅读。

④ 在本篇BLOG中,代码输出部分一般放在一行一列的表格中。其中,需要特别关注的地方我都用灰色背景和粉红色字体来表示,比如在下边的例子中,thread 1的最大归档日志号为33,thread 2的最大归档日志号为43是需要特别关注的地方;而命令一般使用黄色背景和红色字体标注;对代码或代码输出部分的注释一般采用蓝色字体表示。

List of Archived Logs in backup set 11

Thrd Seq     Low SCN    Low Time            Next SCN   Next Time

---- ------- ---------- ------------------- ---------- ---------

1    32      1621589    2015-05-29 11:09:52 1625242    2015-05-29 11:15:48

1    33      1625242    2015-05-29 11:15:48 1625293    2015-05-29 11:15:58

2    42      1613951    2015-05-29 10:41:18 1625245    2015-05-29 11:15:49

2    43      1625245    2015-05-29 11:15:49 1625253    2015-05-29 11:15:53

[ZHLHRDB1:root]:/>lsvg -o

T_XLHRD_APP1_vg

rootvg

[ZHLHRDB1:root]:/>

00:27:22 SQL> alter tablespace idxtbs read write;

====》2097152*512/1024/1024/1024=1G

本文如有错误或不完善的地方请大家多多指正,ITPUB留言或QQ皆可,您的批评指正是我写作的最大动力。

2.2  本文简介

最近心情很低落,今天又下雨,本来想着睡到12点的,结果一发小打电话过来,聊了聊近况,然后问了一道SQL的面试题,这对我而言都是最简单的查询。由于发小是刚入IT行业,准备找Java的工作,所以心里还是担心他是否听懂我的意思了,稳妥起见,还是自己写段代码发他吧。在这里也预祝发小可以顺利找到自己心仪的工作。

发小的问题是:如何找出2张表中的相同数据然后插入到第三张空表中?这个面试题的解答有多种办法,但是最直接也最简单的方式就是集合查询,利用INTERSECT这个交集查询就可以了。下面是整个实验过程。

第二章 实验部分

SQL> CREATE TABLE T_A (ID NUMBER,NAME VARCHAR2(5));

Table created.

SQL> CREATE TABLE T_B (ID NUMBER,NAME VARCHAR2(5));

Table created.

SQL> CREATE TABLE T_C (ID NUMBER,NAME VARCHAR2(5));

Table created.

SQL> INSERT INTO T_A VALUES(1,'a');

1 row created.

SQL> INSERT INTO T_A VALUES(2,'b');

1 row created.

SQL> INSERT INTO T_A VALUES(3,'c');

1 row created.

SQL> INSERT INTO T_A VALUES(4,'d');

1 row created.

SQL> INSERT INTO T_A VALUES(5,'e');

1 row created.

SQL> INSERT INTO T_B VALUES(3,'c');

1 row created.

SQL> INSERT INTO T_B VALUES(4,'d');

1 row created.

SQL> INSERT INTO T_B VALUES(6,'f');

1 row created.

SQL> INSERT INTO T_B VALUES(7,'g');

1 row created.

SQL> commit;

Commit complete.

SQL> SELECT * FROM T_C;

no rows selected

SQL> INSERT INTO T_C

2  SELECT ID ,NAME FROM T_A

3  INTERSECT

4  SELECT ID ,NAME FROM T_B;

2 rows created.

SQL> COMMIT;

Commit complete.

SQL> SELECT * FROM T_C;

ID NAME

---------- -----

3 c

4 d

SQL>

第三章 实验中用到的SQL总结

DROP TABLE T_A;

DROP TABLE T_B;

DROP TABLE T_C;

CREATE TABLE T_A (ID NUMBER,NAME VARCHAR2(5));

CREATE TABLE T_B (ID NUMBER,NAME VARCHAR2(5));

CREATE TABLE T_C (ID NUMBER,NAME VARCHAR2(5));

INSERT INTO T_A VALUES(1,'a');

INSERT INTO T_A VALUES(2,'b');

INSERT INTO T_A VALUES(3,'c');

INSERT INTO T_A VALUES(4,'d');

INSERT INTO T_A VALUES(5,'e');

INSERT INTO T_B VALUES(3,'c');

INSERT INTO T_B VALUES(4,'d');

INSERT INTO T_B VALUES(6,'f');

INSERT INTO T_B VALUES(7,'g');

commit;

INSERT INTO T_C

SELECT ID ,NAME FROM T_A

INTERSECT

SELECT ID ,NAME FROM T_B;

About Me

...............................................................................................................................

● 本文作者:小麦苗,只专注于数据库的技术,更注重技术的运用

● 本文在itpub(http://blog.itpub.net/26736162)、博客园(http://www.cnblogs.com/lhrbest)和个人微信公众号(xiaomaimiaolhr)上有同步更新

● 本文itpub地址:http://blog.itpub.net/26736162/viewspace-2128358/

● 本文博客园地址:http://www.cnblogs.com/lhrbest/p/6058227.html

● 本文pdf版及小麦苗云盘地址:http://blog.itpub.net/26736162/viewspace-1624453/

     微信群:私聊

● 联系我请加QQ好友(642808185),注明添加缘由

-13 09:00 ~ 2016-11-13 11:00 在泰兴公寓完成

● 文章内容来源于小麦苗的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解

● 版权所有,欢迎分享本文,转载请保留出处

...............................................................................................................................

手机长按下图识别二维码或微信客户端扫描下边的二维码来关注小麦苗的微信公众号:xiaomaimiaolhr,免费学习最实用的数据库技术。

【SQL查询】集合查询之INTERSECT的更多相关文章

  1. Hibernate 笔记 HQL查询 条件查询,聚集函数,子查询,导航查询

    在hibernate中进行多表查询,每个表中各取几个字段,也就是说查询出来的结果集并没有一个实体类与之对应,如何解决这个问题? 解决方案一,按照Object[]数据取出数据,然后自己组bean 解决方 ...

  2. SQL SERVER技术内幕之6 集合查询

    1.定义 集合运算会对两个输入查询的结果集进行逐行比较,根据比较结果和所使用的集合运算来确定某一行是否应该包含在集合运算的结果中.因为集合运算是针对集合之间进行的计算,所以集合运算涉及的两个查询不能包 ...

  3. SQL基础--查询之四--集合查询

    SQL基础--查询之四--集合查询

  4. SQL连接、嵌套和集合查询---

    SQL连接.嵌套和集合查询 一:连接查询 1 .不同表之间的连接查询 例 查询每个学生及其选修课程的情况. 本查询实际上是涉及Students与Reports两个表的连接操作.这两个表之间的联系是通过 ...

  5. 二开获取yigo设计器里查询集合里中的某个SQL

    package com.bokesoft.lrp_v3.mid.dongming.service; import java.math.BigDecimal; import java.util.Arra ...

  6. oracle SQL多表查询

    SQL多表查询 1.集合理论 1.1 什么是集合 具有某种特定性质的事物的总体. 集合的特性:无序性.互异性.确定性. 一个集合可以小到从一个表中取出一行中的一列.              1 ro ...

  7. .Net程序员学用Oracle系列(14):子查询、集合查询

    1.子查询 1.1.子查询简介 1.2.WITH 子查询 2.集合查询 2.1.UNION 和 UNION ALL 2.2.MINUS 2.3.INTERSECT 2.4.集合运算与 ORDER BY ...

  8. Oracle数据库多表查询,子查询,集合运算

    记得自己要敲o~~~ select * from bonus; select * from salgrade; from dual; --笛卡尔积:两张表的乘积 select * from emp,d ...

  9. 08Microsoft SQL Server 数据查询

    Microsoft SQL Server 数据查询 单表查询所有列 --查询所有行所有列 select all * from table; --查询不重复行的所有列 select distinct * ...

随机推荐

  1. Android学习笔记之树形菜单的应用...

    PS:终于考完试了,总算是解脱了...可以正式上手项目开发了.... 学习内容: 1.掌握如何使用树形菜单...   对知识点进行一下补充...居然忘记了去学习树形菜单...不过在这里补上... Ex ...

  2. Mysql log_slave_updates 参数

    官网说明: Normally, a slave does not log to its own binary log any updates that are received from a mast ...

  3. 2015年百度之星初赛(1) --- B 找连续数

    找连续数 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...

  4. C#中得到两个数百分比 (转)

    //此方法得到的百分比后小数太多,不行double percent=Convert.ToDouble(2)/Convert.ToDouble(34); string result=(percent*1 ...

  5. JS代码的位置与事件响应代码块的封装问题

    JS代码的位置       我们可以将JavaScript代码放在html文件中任何位置,但是我们一般放在网页的head或者body部分.   放在<head>部分最常用的方式是在页面中h ...

  6. 在uwp中复活常用的vb库函数

    这个博文是纯原创的,转载一定要说明作者是 Nukepayload2!! 在.Net Core 中,很多地方被精简了,有个重灾区就是vb语言库.从当初的囊括vb6库函数并且附带后期绑定到现在的几个函数加 ...

  7. SQL交叉表

    之前做货品横向展示时,有看到评论说用到交叉表. 公司最近需要给订单表做一个数据汇总的功能,同事给到一个参考SQL select * from (select COUNT(1) as 已锁定 from ...

  8. Java文件编码自动转换工具类(只改变编码,不会改变文件内容)

    本篇随笔主要介绍了一个用java语言写的将一个文件编码转换为另一个编码并不改变文件内容的工具类: 通过读取源文件内容,用URLEncoding重新编码解码的方式实现. public class Cha ...

  9. 多准则决策模型-TOPSIS评价方法-源码

    ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 ...

  10. Hibernate之lazy延迟加载(转)

    一.延迟加载的概念 当Hibernate从数据库中加载某个对象时,不加载关联的对象,而只是生成了代理对象,获取使用session中的load的方法(在没有改变lazy属性为false的情况下)获取到的 ...