首页
学习
活动
专区
圈层
工具
发布

【学习】图解SQL连接语句

SQL 联合语句好像是基于集合的,用韦恩图来解释咋一看是很自然而然的。假设我们有下面两张表。表A在左边,表B在右边。我们给它们各四条记录。...1、内连接-INNER JOIN SELECT * FROM TableA INNER JOIN TableB ON TableA.name = TableB.name id name...null 1 Rutabaga null null 3 Darth Vader 为了生成对于表A和表B唯一的记录集,我们用同样的全外联合,然后用where语句排除两边都不想要的记录...(如下图) 3、左连接-LEFT OUTER JOIN ——————————————————————————- SELECT * FROM TableA LEFT OUTER JOIN TableB...---- 2 Monkey null null 4 Spaghetti null null 为了生成只在表A里而不在表B里的记录集,我们用同样的左外联合,然后用where语句排除我们不想要的记录

1.2K90

Mysql常用sql语句(18)- union 全连接

测试必备的Mysql常用sql语句系列 https://www.cnblogs.com/poloyy/category/1683347.html 前言 其实Mysql并没有全连接,Oracle才有全连接...语法格式说明 sql1、sql2、sql3:平时写的查询 sql,可以连接很多条 sql ALL:可选参数,返回所有结果集,包含重复数据 distinct:可选参数,删除结果集中重复的数据(默认只写 union...知识点(重点) 使用 union 连接的多条sql,每个 sql 查询出来的结果集的字段名称要一致【只需要名称一致即可,顺序可以不同,但建议相同】,可以看看下面的栗子 最终 union 连接查询的结果集的字段顺序会以第一个...从上图可以看出,第二条 sql 查出来的字段顺序和最终结果集字段顺序明显不一样,导致数据错乱的问题 所以!!union 连接的每条 sql 指定的字段顺序最好一致!! 所以!!...union 连接的每条 sql 指定的字段顺序最好一致!! 所以!!union 连接的每条 sql 指定的字段顺序最好一致!!

1.8K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Mysql常用sql语句(16)- inner join 内连接

    测试必备的Mysql常用sql语句系列 https://www.cnblogs.com/poloyy/category/1683347.html 前言 利用条件表达式来消除交叉连接(cross join...inner join通过 来设置条件表达式,如果没有加on的话,inner join和cross join是相同的 on 和 inner join ... on 其实效果也是一样的(但在标准sql...Mysql支持) crossjoin ... on inner join 的语法格式 SELECT FROM INNER JOIN [ON子句] inner join 可以连接...,自连接:查询有leader的员工以及leader信息 自连接:同一张表相连 select * from emp as a inner join emp as b on a.leader = b.id;...特殊内连接,不等值连接 不等值连接:查询条件的逻辑运算符是大于或小于 select * from emp as a inner join dept as b on a.dept_id > b.id; ?

    1.3K10

    Mysql常用sql语句(17)- left right join 外连接

    测试必备的Mysql常用sql语句系列 https://www.cnblogs.com/poloyy/category/1683347.html 前言 外连接分为两种:left join、right join...外连接显示的内容要比内连接多,是对内连接的补充 left join的主表是左表,从表是右表 right join的主表是右表,从表是左表 外连接会返回主表的所有数据,无论在从表是否有与之匹配的数据,若从表没有匹配的数据则默认为空值...left join 的栗子 SQL分析 主表:emp 从表:dept 根据 emp 表的员工 dept_id 和 dept 表的部门 id 进行匹配 因为 emp 是主表,所以最后两条记录的 dept_id...left join + where 的栗子 SQL分析 主表:emp 从表:dept 若不看where,前面的查询结果和上面的栗子一样 where的作用:将上面的查询结果集进行过滤,最终只返回 id 是...SQL分析 主表:dept 从表:emp 根据 dept 表的 id 和 emp 表的 dept_id 进行匹配 因为 dept 是主表,所以最后两条记录的 id 在 emp 表没有匹配到 dept_id

    3.6K10

    Python连接数据库,SQL语句查询这样操作!

    01 前言 Python链接数据库的方式有几种,但是原理都是一样的,总共可以分为两个步骤,第一步是与数据库建立链接,第二步执行sql查询语句,这篇将分别介绍如何与数据库链接以及如何进行sql语句查询。...charset=utf8") 03 执行sql语句 # 方法一:使用pd.read_sql() 主要参数如下所示pd.read_sql(sql, #需要使用的sql语句或者数据表con, #sqlalchemy...主要参数如下所示pd.read_sql(sql, #完整的sql语句con, #sqlalchemy连接引擎名称index_col = None, #将被用作索引的名称columns = None #...# 输入正确的数据库新信息后,read_sql方法返回的是我们熟悉的数据框结构,可以方便浏览数据,如需查看汇总信息,修改sql语句即可。...04 读入数据库文件方法总结 使用create_engine方法能够满足绝大部分数据库连接与操作命令; 数据库连接信息包含特殊字符串,需要使用mysql.connect()作为连接方法; pd.read_sql

    4.5K31

    SQL Server常用Sql语句

    例如:select top 5 * from student –查询表中前五条记录 Select top 10 percent * from student –查询表中前10%的记录 25.条件查询语句...Select 字段列表 Into 新表名 from 表名列表  where 查询条件 注释:新表是不存在的,新表的列和行是基于查询结果的, ---使用该语句必须在目的数据据中必须具 有create table...Where 列名 =’值’ order by 给定条件列 [asc/desc] 注释:asc:升序    desc:降序 28.集合函数(对查询结果得到的数据集进行汇总或求平均值等各种运算) SQL server...From 表名1,表名2 32.内连接(连接条件通常采用“主键=外键”的形式) 表达式1: Select 表名1.列名 , 表名2.列名...  ...From 表名1,表名2 Where 表名1.列名=表名2.列名 33.外连接: *左外连接(将左表中的所有记录分别与右表中的每条记录进行组合) 表达式:select 列表1.列名_  as 列名,列表

    7.5K46

    SQL语句结构

    结构化查询语言包含6个部分: 一:数据查询语言(DQL:Data Query Language): 其语句,也称为“数据检索语句”,用以从表中获得数据,确定数据怎样在应用程序给出。...保留字SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字有WHERE,ORDER BY,GROUP BY和HAVING。这些DQL保留字常与其他类型的SQL语句一起使用。...三:事务处理语言(TPL):跟shell有点类似 由多条sql语句组成的整体 它的语句能确保被DML语句影响的表的所有行及时得以更新。...TPL语句包括BEGIN TRANSACTION,COMMIT和ROLLBACK。...五:数据定义语言(DDL): 其语句包括动词CREATE和DROP。在数据库中创建新表或删除表(CREAT TABLE 或 DROP TABLE);为表加入索引等。

    2.2K51
    领券