zoukankan      html  css  js  c++  java
  • 从零开始学SQLSERER-INNER JOIN

    导学

    通过INNER JOIN来连接两张表算是进阶知识了,加油!

    图片名称

    INNER JOIN·作用

    主要作用是连接两张表。通过连接两张表对应列中,相同的部分。如果两个列中,没有对应相同得值,则为空白,可以看一下例子。

    这样说可能有点抽象,我们可以看看下面的例子。

    现在有两张表,一张学生信息Students表和家庭信息Info表,如下。
    Students表:

    id name class
    5 张三 五班
    7 李四 四班
    3 王五 一班
    2 小张 三班

    Info表:

    id father monther
    5 张三妈 张三爸
    7 李四妈 李四爸
    3 王五妈 王五爸
    4 小明妈 小明爸

    这时候通过INNER以id列为中介进行关联,可以得到以下结果

    id name class father monther
    5 张三 五班 张三妈 张三爸
    7 李四 四班 李四妈 李四爸
    3 王五 一班 王五妈 王五爸

    可以看到,Students表和info表对应id列,相同id为5,7,3,所以最终结果保留了id为5,7,3行的信息。而Students表中id为2的行在info表中没找到相同id进行对应所以没有保留,而info表中id为3的行在Students表中没找到相同id进行对应所以没有保留。

    以上就是INNER的示例讲解,下面我们看看代码。

    INNER JOIN·代码

    SELECT 列名 FROM 表1名
    INNER JOIN 表2名 ON 表1名.列名 = 表2名.列名 --通过两个列中相同值的部分进行关联
    

    INNER JOIN·示例

    首先,建立示范数据

    CREATE TABLE Students
    (
    id    BIGINT,
    name  VARCHAR(20) ,
    class VARCHAR(20) 
    )
    
    INSERT INTO Students VALUES('5','张三', '五班')
    INSERT INTO Students VALUES('7','李四', '四班')
    INSERT INTO Students VALUES('3','王五', '一班')
    INSERT INTO Students VALUES('2','小张', '三班')
    
    id name class
    5 张三 五班
    7 李四 四班
    3 王五 一班
    2 小张 三班
    CREATE TABLE Info
    (
    id    BIGINT,
    father  VARCHAR(20) ,
    monther VARCHAR(20) 
    )
    
    INSERT INTO Students VALUES('5','张三妈', '张三爸')
    INSERT INTO Students VALUES('7','李四妈', '李四爸')
    INSERT INTO Students VALUES('3','王五妈', '王五爸')
    INSERT INTO Students VALUES('4','小明妈', '小明爸')
    
    id father monther
    5 张三妈 五班爸
    7 李四妈 四班爸
    3 王五妈 一班爸
    4 小明妈 小明爸

    需求:关联两张表具有相同id的信息。

    SELECT * FROM Students
    INNER JOIN Info ON Students.id = Info.id
    

    结果:

    id name class father monther
    5 张三 五班 张三妈 张三爸
    7 李四 四班 李四妈 李四爸
    3 王五 一班 王五妈 王五爸

    以上就是INNER JOIN的内容,这个内容很常用,必须掌握,还有其它对应的两张表连接方式,也要好好掌握,只有掌握了这些,才算是掌握基本的SQLSERVER技术。加油,冲冲冲!

    图片名称
  • 相关阅读:
    SQL SERVER 将表字段值0和1互转的几种方法
    JS 解决 IOS 中拍照图片预览旋转 90度 BUG
    Js利用Canvas实现图片压缩
    IIS 下调用证书出现异常解决方案 (C#)
    C# 如何防止重放攻击
    RSA,JAVA私钥加密,C#公钥解密
    C# 字符串按 ASCII码 排序,注意其中的小坑
    C# dynamic类型报错:“object”不包含“xxx”的定义
    Angularjs 实现移动端在线测评效果
    C# 利用VS自带的WSDL工具生成WebService服务类
  • 原文地址:https://www.cnblogs.com/LY-CS/p/14453013.html
Copyright © 2011-2022 走看看