zoukankan      html  css  js  c++  java
  • MySQL之多表查询

      之前我们建立表与表之间的关系是用的foreign key,外键所连接的两个表之间是强制连接关系,而且建表还得先建立被指向的表,之后才能建立有外键的表,其实我们还有其他方法,不使用外键就可以实现关联,多表查询有以下三种方法。

      现在有两个表,分别为department表和employee表,他们之间是没有外键关系的。

      两个表分别有以下数据。

      一、笛卡尔积

      我们可以通过笛卡尔积得到一个新的虚拟的表。

      我们得到这个表之后,就可以用这表取我们想要的数据。比如拿到技术部门的员工名字

      二、链表查询

      其实链表查询和笛卡尔积差不多,只是笛卡尔积的链表和查询放在了一起,逻辑不是很好,但链表就把链表和查询分开的。主要分为四种。

      1,inner join    on

      2,left join     on

      3,right join   on

      4,union

      上面的四种方法可以帮我们创建一个虚拟的表,得到这表之后我们就可以进行查询。

      三、子查询

      子查询就是先对一个表查询得到一个值,然后我们把这个值作为下一个表查询的约束条件用。

      对于第一个得到的结果可以是几个值,所以我还可以使用in,!=,<,>,not ,exists

      exists的用法:select * from employee where exists ..............此处的省略可以跟任意,只要省略的内容不为零就会执行前面的代码,不然前面的代码就不会执行。

            

  • 相关阅读:
    在Codeblocks下配置GoogleTest单元测试工具
    自制贪吃蛇游戏中的几个“大坑”
    贪吃蛇“大作战”(进阶篇)
    贪吃蛇“大作战”(终结篇)
    贪吃蛇“大作战”(六)
    贪吃蛇“大作战”(五)
    贪吃蛇“大作战”(四)
    贪吃蛇“大作战”(三)
    小心!选择的陷阱
    贪吃蛇“大作战”(二)
  • 原文地址:https://www.cnblogs.com/12345huangchun/p/10098722.html
Copyright © 2011-2022 走看看