zoukankan      html  css  js  c++  java
  • SQL进阶语法的多表操作

    AS别名

    多张表联合操作,如果表多,字段名长,不方便阅读。这里我们可以使用  as  关键字来对字段名设置别名。

    as也可以省略,看个人喜好,在这里我还是支持把 as 写上,这样我们在面对复杂的SQL语句时有很好的可读性。

    接下来的多表操作将都使用别名,不难,一看便懂。

     下面是两张表,

    表的链接

    1、内连接(又称显示连接)

     inner  join

    如果表中至少有一个匹配,则返回结果

    查询列出购买了商品的用户,以及他们买了什么

    2、左连接

    left  join

    即使右表中没有匹配,也从左表返回所有的结果

     

    查询列出所有用户,即使他们没有买东西

     3、右连接

    right  join

    即使左表中没有匹配,也从右表返回所有的结果

    查询列出所有商品,即使该商品没有被用户购买

    4、全连接

    full  join   

    注:mysql 不支持full  join,所以我们使用mysql支持的方式来实现full  join的功能。也就是join + union(不懂union先看下面的union讲解)

    join + union

    其实就是内连接 + 左连接 + 右连接

    查询列出哪些用户购买了哪些商品,哪些用户没有购买,哪些商品没被用户购买

    附:union的功能

    union:并和两个或多个select语句的结果集合,自动去重

    union all:与union相同,但是允许重复

    注意事项:使用union,必须保证所有select后面查询的字段名一致。数量,类型,顺序都必须是一样的。

    5、制作备份文件

    select  into

    注:mysql也不支持select  into这种方法来创建备份表,我们可以用另一种方法 ↓

    create  table  备份表名  (select  字段名  from  表名)

    创建了userinfo表的备份表,内容一致

  • 相关阅读:
    Nginx反向代理Mysql
    Postgresql数据迁移
    Docker安装及配置
    jstack用法
    Centos7系统添加Windows字体
    Bash美化
    ERROR: new encoding (UTF8) is incompatible xxx
    Python selenium 自动化脚本打包成一个exe文件(转载 原文https://www.jb51.net/article/178430.htm)
    python -m pip install --upgrade pip 失败
    Warning: no saslprep library specified. Passwords will not be sanitized
  • 原文地址:https://www.cnblogs.com/eyesCentre/p/10698596.html
Copyright © 2011-2022 走看看