zoukankan      html  css  js  c++  java
  • MySQL基础总结(三)

    ORDER BY排序

    ORDER BY默认是ASC(升序),降序是DESC
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述


    LIMIT限制查询结果显示条数

     
    LIMIT显示条数
    在这里插入图片描述
    LIMIT偏移量,显示条数
    在这里插入图片描述
    在这里插入图片描述
    到目前为止有关查询数据的操作(DQL)
    在这里插入图片描述


    更新数据的拓展

     
    对ORDER BY和LIMIT的应用
    在这里插入图片描述


    删除数据的拓展

     
    对ORDER BY和LIMIT的应用
    在这里插入图片描述


    连接查询

     
    连接查询是将两个和两个以上的表按某个条件连接起来,从中选取需要的数据,是在同时查询两个或两个以上的表时使用的,当不同的表中存在相同意义的字段时,可以通过该字段连接这几个表。

     
    内连接查询
    用得比较多,可以显示两个表中符合连接条件的记录。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    内连接查询的格式

    SELECT 字段名称1,字段名称2FROM tbl_name1
    INNER JOINCROSS JOINJOIN tbl_name2
    ON 条件;
    

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述


     
    外连接查询

    分为两种:
    在这里插入图片描述
    在这里插入图片描述
    LEFT [OUTER] JOIN(左外连接):显示左表的全部记录及右表符合连接条件的记录
    在这里插入图片描述
    RIGHT [OUTER] JOIN (右外连接):显示右表的全部记录以及左表符合连接条件的记录
    在这里插入图片描述


    外键

    • 概述
      外键是表的一个特殊字段。
      被参照的表是主表,外键所在字段的表为子表。
      设置外键的原则需要记住,就是依赖于数据库中已经存在的表的主键
      外键的作用建立该表与其父表的关联关系。父表中对记录做操作时,子表中与之对应的信息也应有相应的改变。

    • 格式

    --‘子表字段名称’和‘主表字段名称’要有关联
    --在创建子表时写入
    --外键名称可给可不给
    CONSTRAINT 外键名称 FOREIGN KEY(子表字段名称) REFERENCES 主表名称(主表字段名称)
    
    • 特点
      1.保持数据的一致性和完整性
      2.可以实现一对一或一对多的关系

    • 注意事项
      1.父表与子表必须使用相同的存储引擎,而且禁止使用临时表
      2.数据表的存储引擎只能为InnoDB
      3.外键列和参照列必须具有相似的数据类型,其中数字的长度或是否有符号位必须相同,而字符的长度则可以不同
      4.外键列和参照列必须创建索引。如果外键列不存在索引的话,MySQL将自动创建索引

    • 外键约束的参照操作
      CASCADE:从父表删除或更新且自动删除或更新子表中匹配的行
      SET NULL:从父表删除或更新行,并设置子表中的外键列为NULL。如果使用该选项,必须保证子表列没有指定NOT NULL
      RESTRICT:拒绝对父表的删除或更新操作
      NO ACTION:标准SQL的关键字,在MySQL中与RESTRICT相同


    示例
    为什么需要用到外键?
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述


    创建表时外键起到的作用
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述


    添加外键格式

    ALTER TABLE tbl_name ADD CONSTRAINT 外键名称 FOREIGN KEY (子表字段名称) REFERENCES 主表名称(主表字段名称) 
    

    删除外键格式

    ALTER TABLE tbl_name DROP FOREIGN KEY 外键名称;
    

    示例
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述


    • CASCADE 格式
    CONSTRAINT 外键名称 FOREIGN KEY(子表字段名称) REFERENCES 主表名称(父表字段名称) ON DELETEUPDATE CASCADE
    

    示例
    在这里插入图片描述
    在这里插入图片描述


    • SET NULL 格式
    CONSTRAINT 外键名称 FOREIGN KEY(子表字段名称) REFERENCES 主表名称(父表字段名称) ON DELETEUPDATE SET NULL
    

    示例
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述


    联合查询

    • UNION
    --要查询的字段数一定要相同
    --查询的字段属性也最好是同一类型
    SELECT 字段名称1 FROM tbl_name1 UNION SELECT 字段名称2 FROM tbl_name2;
    
    • UNION ALL
    SELECT 字段名称1 FROM tbl_name1 UNION ALL SELECT 字段名称2 FROM tbl_name2;
    
    • UNION和UNION ALL的区别
      1.UNION是去掉相同记录
      2.UNION ALL是简单地合并到一起

    示例
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述


    子查询

    • 概述
      子查询是将一个查询语句嵌套在另一个查询语句中。内层查询语句的查询结果,可以作为外层查询语句提供条件。

    • 引发子查询的情况
      1.使用 [NOT]IN 的子查询
      2.使用 比较运算符 的子查询
      3.使用 [NOT]EXISTS 的子查询
      4.使用 ANY|SOME|ALL 的子查询
      在这里插入图片描述

    • 将查询结果写入到数据表的格式

    INSERT [INTO] tbl_name [(col_name,...)]
    SELECT ...
    
    • 创建数据表的同时将查询结果写入到数据表的格式
    CREATE TABLE [IF NOT EXISTS] tbl_name
    [(create_definition...)]
    select_stament
    

     
     
    示例
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述


    正则表达式查询

     
    格式

    SELECT 字段名称 FROM tbl_name WHERE 字段名称 REGEXP '匹配模式';
    

    常用匹配方式
    在这里插入图片描述
     
    示例
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 相关阅读:
    博客园的商业模式
    读书单
    VC++学习笔记
    技术话题
    vc+学习遇到的问题
    常见的Java问题排查方法
    MSDN Library for vs 2010 下载和安装
    WT19i刷机过程
    随记
    WT19i的刷机
  • 原文地址:https://www.cnblogs.com/zzzsw0412/p/12772513.html
Copyright © 2011-2022 走看看