zoukankan      html  css  js  c++  java
  • MySQL的多表联查

    1.内连接

           规则:返回两个表的公共记录

           语法:

    -- 语法一
    select * from 表1 inner join 表2 on 表1.公共字段=表2.公共字段
    -- 语法二
    select * from 表1,表2 where 表1.公共字段=表2.公共字段

               补充: 

    -- 如何实现三表查询
    select * from 表1 inner join 表2 on 表1.公共字段=表2.公共字段 inner join 表3 on 表2.公共字段=表3.公共字段

    2. 左外连接
              规则:以左边的表为准,右边如果没有对应的记录用null显示

              语法:

    select * from 表1 left join 表2 on 表1.公共字段=表2.公共字段

    3.右外连接

               规则:以右边的表为准,左边如果没有对应的记录用null显示

               语法:

    select * from 表1 right join 表2 on 表1.公共字段=表2.公共字段

    4.交叉连接

                规则:返回笛卡尔积   

                语法:

    select * from 表1 cross join 表2

    5.自然连接   

                      规则:自动判断条件连接,判断的条件是依据同名字段

                  语法: 

    1.自然内连接(natural joinmysql> select * from stuinfo natural join stumarks;
    2.自然左外连接(natural left joinmysql> select * from stuinfo natural left join stumarks;
    3.自然右外连接(natural right joinmysql> select * from stuinfo natural right join stumarks;

                         小结:

                         1、表连接是通过同名字段来连接的

                         2、如果没有同名字段就返回笛卡尔积

                         3、同名的连接字段只显示一个,并且将该字段放在最前面

    6.using

                         using用来指定连接字段

    mysql> select * from stuinfo inner join stumarks using(stuno);

     

  • 相关阅读:
    学生信息表
    水仙花数
    DirectAccess完整配置
    这些惹人嫌系统安装方法
    求解方程式
    AD DS的维护之备份还原
    简单的switch语句
    linux_常用命令
    小小问题
    frameset和frame
  • 原文地址:https://www.cnblogs.com/shineguang/p/11354570.html
Copyright © 2011-2022 走看看