zoukankan      html  css  js  c++  java
  • MySQL的多表查询(笛卡尔积原理)

    1. 先确定数据要用到哪些表。
    2. 将多个表先通过笛卡尔积变成一个表。
    3. 然后去除不符合逻辑的数据(根据两个表的关系去掉)。
    4. 最后当做是一个虚拟表一样来加上条件即可。

    注意:列名最好使用表别名来区别。

    笛卡尔积

     

    Demo:

    左,右连接,内,外连接

    l             内连接:

    要点:返回的是所有匹配的记录。

    1. 2.         select * from a,b where a.x = b.x                                                 ////内连接

    l             外连接有左连接和右连接两种。

    要点:返回的是所有匹配的记录 外加 每行主表外键值为null的一条记录。辅表所有列为null值。

    1. select * from a left join b on a.x=b.x order by a.x  //左外连接或称左连接
    2. select * from a right join b on a.x=b.x order by a.x  //右外连接或称右连接

    select子句顺序

    子句

    说明

    是否必须使用

    select

    要返回的列或表示式

    form

    从中检索数据的表

    仅在从表选择数据时使用

    where

    行级过滤

    group by

    分组说明

    仅在按组计算聚集时使用

    having

    组级过滤

    order by

    输出排序顺序

    limit

    要检索的行数

  • 相关阅读:
    ColorPix——到目前为止最好用的屏幕取色器
    ES+VBA 实现批量添加网络图片
    SQL语句-delete语句
    Visual C++ 2013 and Visual C++ Redistributable Package 更新版官网下载地址
    centos长ping输出日志的脚本
    Centos 常用命令
    c#连接数据库
    C#窗体间的跳转传值
    c#邮件发送
    C#WIFI搜索与连接
  • 原文地址:https://www.cnblogs.com/Toolo/p/3634563.html
Copyright © 2011-2022 走看看