美文网首页
mysql内连接,外连接,自然连接总结

mysql内连接,外连接,自然连接总结

作者: 编程人生 | 来源:发表于2023-05-26 14:58 被阅读0次

    1.UNION 和 UNION ALL 的区别

    UNION ALL 关键字和  UNION 关键字的属性类似,它可以实现查询结果的合并,但不同的是UNION ALL 关键字 不会去掉合并结果中重复的数据。

    2.关于笛卡尔积

    在数据库中,使用这个概念表示两个表中每一行数据的所有组合。

    select 查询字段 from 表1 cross join 表2

    内连接:简单说就是返回两个表关联字段相符的记录,也就是返回两个表的交集。

    select 查询字段

    from 表1

    [inner] join 表2 on 连接条件

    [inner] join 表3 on 连接条件

    .....

    where 条件查询;

    外连接: 外连接可以返回没有关联的数据,返回结果不仅包含符合条件的数据,而且包含左表或右表或两个表中的所有数据。

    左外连接:查询结果中不仅显示左表满足条件的数据,还显示不满足条件的数据(左表的数据全部显示),而右表只保留满足条件的数据,不满足条件的显示为空。

    select 查询条件 from 1 left [outer] join 表 2 on 表1.关键字 = 表2.关键字 where 查询条件;

    右外连接:查询条件不仅显示右表满足条件的数据,还显示不满足条件的数据(右表的数据全部显示),而左表只保留满足条件的数据,不满足条件的显示为空。

    自然连接: Mysql 还有一种自然连接,不需要指定连接字段,表与表之间列名和数据类型相同的字段会自动匹配。自然连接默认按内连接的方式进行查询。

    其语法格式如下: select 查询字段 from 表1 [别名] nature join 表2 [别名];

    自然连接也可以指定左连接或右连接的方式进行查询,语法格式如下

    select 查询字段 from 表1 【别名】 nature 【left|right】 join on 表2 别名;

    嵌套查询

    1.子查询作为查询条件

    在复杂的查询中,子查询往往作为查询条件来使用,它可以嵌套select 语句中。子查询可以在where 关键字 后作为 查询条件 或在from 关键字 后作为 作为表来使用。

    2.子查询作为表

    相关文章

      网友评论

          本文标题:mysql内连接,外连接,自然连接总结

          本文链接:https://www.haomeiwen.com/subject/rgbkedtx.html