zoukankan      html  css  js  c++  java
  • 004 连接查询

    再大多数的情况下,我们都需要进行连接查询.

    笛卡尔积的产生:

    这个就是多表查询的的最初结果集,那么以后我们需要作的就是从结果集中筛选出需要的结果集.


    筛选的方式不同,导致sql的效率不同.

    筛选的方式就是加入连接标准.


     等值连接:

    select 字段 from 表1 , 表2 where 连接条件.

    eg:查询员工名和对应的部门的名称.

    SELECT
    last_name,
    a.department_id
    FROM
    employees a,
    departments b
    WHERE a.department_id = b.department_id

     非等值连接:

    其实与等值连接基本是一致的,都是在笛卡尔积中使用非等值条件然后进行筛选.

    自连接:

    自连接相当于连接的表就是自己,其实和一般的等值连接没有什么区别.


    外连接:

      外连接到底查询的是什么? 我们从维恩图之中就能看出来,

      其实取的就是主表的全部信息,加上交集的全部信息.

      至于左外链和还是右外连接完全是看到底使用哪一张表作为主表.

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

    全外连接: 在mysql之中是不支持全外连接的,我们想要获取圈外连接的信息,就只能靠我们自己手动的去拼凑结果集,

    最终获取结果集然后完成.


    交叉连接:

      其实就是我们获取的笛卡尔积的一种方式,在实际之中基本是没有什么作用的.

  • 相关阅读:
    Memcached: 目录
    Memcached: temple
    Redis: Redis支持五种数据类型
    互联网市场
    java实现猜生日
    java实现汉诺塔计数
    java实现汉诺塔计数
    java实现汉诺塔计数
    java实现汉诺塔计数
    java实现汉诺塔计数
  • 原文地址:https://www.cnblogs.com/trekxu/p/8492609.html
Copyright © 2011-2022 走看看