数据库
🗒️MySQL-2
00 min
2021-7-2
2024-1-21
type
status
date
slug
summary
tags
category
icon
password
 

一、Mysql服务的登录和退出

二、Mysql的常见命令(数据库操作)

三、Mysql的语法规范

四、DQL语言学习

(data query language 查询语言)

4.1、基础查询

select 查询列表 from table
查询列表: 表中的字段、常量、表达式、函数

4.2、条件查询

select 查询列表 from table where 筛选条件

4.3、排序查询

select 查询列表 from table order by 排序列表 【asc /升序 desc/降序 】
  • asc /升序 desc/降序
  • order不要可以支持单个字段,多个字段,函数,别名
  • order by 一般放在查询语句的最后

4.4、常见函数

4.4.1、单行函数

4.4.2、分组函数

  • 用于统计使用,又称聚合函数
  • sum求和、avg平均数、max最大值、min最小值、count计算个数

4.5、分组查询

select 查询列表 from table group by 分组函数
  • 分组前筛选使用where ,分组后筛选使用 having

4.6、连接查询

4.6.1、sql92语法

  • 等值连接
    • 非等值连接
      • 自连接

        4.6.1、sql99语法

        • 内连接
          • 外连接
            • 左外连接,left join 左边的是主表
            • 右外连接,right join 右边的是主表

          4.7、子查询

          内部嵌套其他select语句的查询,称为外查询或主查询

          4.7.1、列子查询

          4.7.2、from后面,表查询

          4.8、分页查询

          select 查询列表 from table limit offset , size
          • offset 要是显示条目的起始索引
          • size 要显示的条目个数

          4.9、union联合查询

          语法:
          应用场景:
          • 查询结果来自于多个表,且多个表之间没有直接的连接关系,但查询的信息一致
          • 默认去重,不去重则 union all

          五、DML语言学习

          data manage language 操作语言,增删改

          5.1、插入语句

          • insert into 表名 (列名,.......) value(值1,.......)
          • insert into 表名 set 列名=值,列名=值,....

          5.2、修改语句

          5.2.1、修改单表

          5.3、删除语句

          六、DDL语言

          数据定义语言,表和库的管理

          6.1、库的管理

          创建、修改、删除

          6.2、表的管理

          创建、修改、删除
          • 表的创建
          • 表的修改
            • alter table 表名 add|drop|modify|change column 列名 【列类型 约束】
          • 表的复制
            • CREATE TABLE copy LIKE 表名

          七、约束

          • NOT NULL : 非空,用于保证该字段的值不为空
          • DEFAULT: 用于保证该字段具有默认值
          • PRIMARY KEY:主键,用于保证该字段的值具有唯一性,并且非空
          • UNIQUE:唯一,用于保证该字段具有唯一性,可以为空
          • CHECK: 检查约束【mysql中不支持】
          • FOREIGN KEY:外键,用于限制两个表的关系,用于保证该字段的值必须来自主表的关联的值
            • 主键与唯一得区别:
              主键和唯一都可以保证唯一性,但是主键不能为空,唯一允许为空
          • 标志列:自增长列 (AUTO_INCREMENT)
            • 一个表至多一个标识列,且必须为数值类型

          八、TCL语言

          Transaction Control Language 事务控制语言

          8.1、事务的ACID属性

          • 原子性(Atomicity)
            • 一致性(Consistency)
              • 隔离性(Isolation)
                • 持久性(Durability)

                  8.2、并发读出问题

                  • 脏读:一个事务T1读取了另一个事务T2未提交的字段,若T2回滚,则T1读取的数据无效
                  • 不可重复读:两个事务T1,T2都读取了同一字段,T2对字段进行修改,如果T1再次读取同一字段,值就不同了
                  • 幻读:两个事务T1,T2都读取了同一字段,T2对表进行插入新行,如果T1再次读取同一个表,则多出几行

                  8.3、事务的隔离级别

                  • READ UNCOMMITED
                    • READ COMMITED
                      • REPEATABLE READ
                        • SERIALIZABLE (串行化)

                          九、视图

                          9.1、视图的创建

                          9.2、视图的删除

                          9.3、查看视图

                          9.4、视图的更新

                          十、全局变量

                          10.1、全局变量

                          十一、存储过程

                          11.1、创建语法

                           
                          上一篇
                          MongDB
                          下一篇
                          MySQL命令大全