第十三章: 在查询表里结合表

1、等值结合 :

// 选择 tabla_a 和table_b 中id相等的行,输出 他们的id 和name

  select table_a.id , table_a.name , table_b.id , table_b.name from table_a , table_b where table_a.id = table_b.id ;

  或者使用 inner join

  select table_a.id , table_a.name , table_b.id ,table_b.name from table_a inner join table_b on table_a.id = table_b.id;

  或者使用别名

  select a.id , a.name , b.id ,b.name from table_a  a ,table_b  b where a.id = b.id and a.salary > 2000;

2、不等值结合

  与等值结合语法相同,只是将 等号改为 不等号但是不等值结合会输出多余的信息,因为 table A中每行数据都要和 table B中每一行数据进行比较 。

若a.id != b.id ,则输出 相应的信息。

3、外部结合

4、自结合

  select a.last_name , a.first_name ,b.first_name , b.last_name from table_a  a,table_a b where a.last_name = b.last_name ;  

应用:  在一个保存了 雇员标示号码,姓名,雇员主管标示号码的表里。

  select * from emp;

        id     name  mgr_id

        1  john      0

        2   mary    1

        3   steve       1

        4   jack     2

        5   sue    2

  现在需要找到 雇员与 雇主的关系

  select  e1.name , e2.name from emp e1,emp e2 where e1.mgr_id = e2.id ;

    name   name

    mary  john

    steve  john

    jack   mary

    sue   mary

inner join / left join / right join 可以参考

    http://www.cnblogs.com/xxlhcjh/p/4309982.html

第十四章: 使用子查询定义未确定的数据

1、 子查询与select 结合使用

  select colum from table where column where  columnb=(select colum_name from ...);

2、   子查询与inset结合使用

  insert table1 select column1 from table2 where cloumn2>(select ......);

  将表二中满足条件的某几项 插入到表1 中,注: 插入的项数 = table1的column数

3、 子查询与 update 结合使用

4、 子查询与delete 结合使用

第十五章: 组合多个查询

1、 union

  select id from stu union select id from jobe ;        // 当两个table中id相同时,不重复输出。

2、 union all

  select id from stu union all select id from jobe ;    // 当两个table中id相同时,重复输出。

sql 入门经典(第五版) Ryan Stephens 学习笔记  第四部分:建立复杂的数据库查询/的更多相关文章

  1. 《c#入门经典第五版》简介及pdf电子书网盘下载地址(收藏)

    <C#入门经典(第5版)>全面讲解C# 2010和.net架构编程知识,为您编写卓越C# 2010程序奠定坚实基础.C#入门经典系列是屡获殊荣的C#名著和超级畅销书.最新版的<C#入 ...

  2. sql 入门经典(第五版) Ryan Stephens 学习笔记 后续——存储引擎

    一.引擎基础 1 查看系统支持的存储引擎 show engines; 2 查看表使用的存储引擎两种方法: a.show table status from database_name where na ...

  3. sql 入门经典(第五版) Ryan Stephens 学习笔记 (第六,七,八,九,十章,十一章,十二章)

    第六章: 管理数据库事务 事务 是 由第五章 数据操作语言完成的  DML ,是对数据库锁做的一个操作或者修改. 所有事务都有开始和结束 事务可以被保存和撤销 如果事务在中途失败,事务中的任何部分都不 ...

  4. sql 入门经典(第五版) Ryan Stephens 学习笔记 第五部分: 性能调整

    第十六章: 利用索引改善性能 1. create index 单字段索引:  create index index_name on table_name (column_name);唯一索引:     ...

  5. sql 入门经典(第五版) Ryan Stephens 学习笔记 (第一,二,三,,四,五章)

    SQL - Structured  Query Language (结构化查询语言) 1/ SQL 命令的类型 : 数据定义语言: DDL 数据操作语言: DML 数据查询语言: DQL 数据控制语言 ...

  6. C#入门经典第五版之变量的更多内容编码题训练

    1. 编写一个控制台应用程序,它接收用户输入的一个字符串,将其中的字符以与输入相反的顺序输出. public string ReverseString(string str) { string rev ...

  7. C#入门经典第五版之变量与表达式编码题训练

    问题:编写一个控制台应用程序,要求用户输入4个int值,并显示它们的乘积.提示:可以使用Convert.ToDouble()命令,把用户在控制台上输入的数转换为double, 以此类推,转换成int命 ...

  8. BOOL运算符号(从C#入门经典第五版中摘录)

    只总结自己觉得难的哈: (1) var1=!var2;    //(非) (2) var1=var2&var3;    //(与) (3)var1=var2|var3;    //(或) (4 ...

  9. 《Python基础教程(第二版)》学习笔记 -> 第四章 字典

    字典是Python中唯一内建的映射类型. 字典中的值并没有特殊的顺序,但是都存储在一个特定的键(Key)里.键可以是数字.字符串甚至是元组. 字典的使用 某些情况下,字典比列表更加适用: 表征游戏棋盘 ...

随机推荐

  1. ahjesus fstab修改错误了如何修复

    fstab修改错误了如何修复   当你不小心把磁盘表输入错误以后,系统总是让你按ctrl+D重新启动或者输入密 码进入shell,你输入密码登陆后,   编辑文件是只读的,执行下面的命令后就可以编辑了 ...

  2. 利用Jquery使用HTML5的FormData属性实现对文件的上传

    1.利用Jquery使用HTML5的FormData属性实现对文件的上传 在HTML5以前我们如果需要实现文件上传服务器等功能的时候,有时候我们不得不依赖于FLASH去实现,而在HTML5到来之后,我 ...

  3. ABAP:SAP报表性能的优化

    大部分ABAPer都是从SAP报表及打印开始学起的,大家也都认为写个SAP报表程序是最简单不过的事了. 但是实际情况真的如此吗?写报表时除了保证数据的准确性,您可曾考虑过报表的性能问题吗? 由于报表程 ...

  4. 2015年第14本(英文第10本):The A.B.C. Murders (A.B.C谋杀案)

    书名:The ABC Murders 推荐指数:5星 作者:Agatha Christie 单词数:7万 不重复单词数:不详 首万词不重复单词数:不详 蓝思值:740 阅读时间:2015年7月18日 ...

  5. Android——五大布局

    Android的五大布局分为: 线性布局 相对布局 帧布局 绝对布局 表格布局 一.线性布局 线性布局在开发中使用最多,具有垂直方向与水平方向的布局方式 通过设置属性"android:ori ...

  6. 关于一个软件ipa包的其他图片资源

    有时候 当你打开一个ipa包内容的时候    可能会找不到全部的资源     所以你需要在github上下载一个插件 下载下来以后   运行一下 然后会出来这个 把ipa  文件   拖到里面     ...

  7. 网络开始---多线程---GCD-01-基本使用(掌握)(六)

    /** GCD两个核心概念:任何和队列 任务:执行什么操作 队列:用来存放任务 使用就2个步骤 1.定制任务 2.将任务添加到队列中 任务的取出队列原则:FIFO原则: 先进先出,后进后出 */ #i ...

  8. C# C/S WPF 远程操作服务器上面的文件

    作的时候用的是WPF,需要做一个上传附件的功能,服务器上有一个文件夹,附件都上传到里面,只知道URL路径. 文件夹是在服务器上的IIS里面(就比如说你发布一个网站,把文件夹建在网站下面,当然这个网站啥 ...

  9. SqlServer int型转varchar型 出现*号

    今天调一个bug,错误提示执行语句 * 附近有语法错误,看了存储过程半天没啥反应,我就更本没有* .打印了一下语句发现 where Mor_Id=* 仔细一看set @sqlupdate+=' whe ...

  10. CoreAnimation-07-CAAnimationGroup

    概述 简介 CAAnimationGroup又称组动画或动画组 将多个动画放到动画组中,并赋值给layer的animations属性,动画组中所有动画就会并发执行 注意事项 动画组中的动画不会被压缩, ...