zoukankan      html  css  js  c++  java
  • MySQL连接的使用

    为什么要有连接

    在实际使用创建表的时候我们不可能将所有的信息都放在一个表中,也就是不同的信息会放在不同的表中,所以我们最终需要的信息

    可能在多个表中,这就需要我们使用连接来查询我们想要的信息。

    有几种连接

    一般情况下我们主要使用下面三种连接:

    1. INNER JOIN(等值连接):获取两个表中字段匹配关系的记录。

    2. LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录。

    3. RIGHT JOIN(右连接): 与 LEFT JOIN 相反,用于获取右表所有记录,即使左表没有对应匹配的记录。

    使用连接的一般思路

    1. 首先要分析我们需要的数据存在哪些表中;

    2. 找到这些表中关联的数据列,没有关联的数据列的话一般不能进行连接查询;

    3. 确定使用哪种连接方式;

    4. 编写查询语句测试;

    假设我们有下面的两个表:
    student表:

    id name
    1 h
    2 j
    3 k
    4 l
    5 m
    6 n
    7 o

    grade表:

    id grade
    1 88
    2 90
    3 87
    4 85

    下面来看三种查询的结果:

    1. INNER JOIN
    select a.id,a.name,b.grade
    from student as a
    inner join grade as b
    on a.id=b.id;
    

    结果为:

    id name grade
    1 h 88
    2 j 90
    3 k 87
    4 l 85
    1. LEFT JOIN
    select a.id,a.name,b.grade
    from student as a
    left join grade as b
    on a.id=b.id;
    

    结果为:

    id name grade
    1 h 88
    2 j 90
    3 k 87
    4 l 85
    5 m NULL
    6 n NULL
    7 o NULL
    1. RIGHT JOIN
    select a.id,a.name,b.grade
    from student as a
    right join grade as b
    on a.id=b.id
    

    结果为:

    id name grade
    1 h 88
    2 j 90
    3 k 87
    4 l 85

    其中的左右表是根据放在join的左右来定义的。

  • 相关阅读:
    垂直渐变的Button
    winform下重画ListBox
    分享一个 C# Winfrom 下的 OutlookBar 控件的使用
    颜色下拉菜单(combox)
    Robot Framework 使用技巧 快捷键
    Batch 拷贝远程机器文件到本机指定目录下
    JMeter常用函数 使用图解
    SoapUI报ClientProtocolException错误
    Setup Script in SoapUI
    邮件自动回复
  • 原文地址:https://www.cnblogs.com/noob-l/p/13274038.html
Copyright © 2011-2022 走看看