MySQL数据库入门到精通【笔记】

视频地址

老师博客地址

基础部分

1、什么是sql mode?
影响了sql语言执行的行为,执行sql时的一些守则;
例如:现实中除数不能为0,也就是通过sql_mode来控制,或者现实中的日期、年份等。
2、字符集和校对规则:
字符集:

  • utf8:最大能存储3字节的字符
  • utf8mb4:最大存储4字节的字符,例如可以存储emoji字符;
    校对规则(排序规则):
    影响字符的排序,例如大小写字符的排序方法。

DDL 语言部分

创建表

1、创建表的的规则:

  • 表名小写字符;(多系统的兼容性)
  • 不能是纯数字;
  • 不能使用保留字符
  • 长度不要过长
    2、查询表的相关信息:
  • 表的属性: desc table ‘表名字’
  • 查询建表过程: show create table ‘table_name’

3、建立表
create table tablename(name1 属性,name2 属性);
表属性:
primary key not null uniqe key
其他属性; default auto_increment comment

修改表

1、添加列

  • alter table table_name add column 表名 该列属性说明;
    2、在定义表之后添加主键
  • alter table stutb add primary key (NAME);

DML

1、删除数据
经典面试题:delete from table_name, drop table table_name, truncate table table_name有什么区别?

  • 以上三条命令都可以删除全表数据;
  • 区别在于:delete from table_name逻辑上是逐行删除,数据行多,操作慢;并没有真正从磁盘上删除,只是在存储层打标记,磁盘空间不会立即被释放。HWM高水位线不会降低。
  • drop table table_name 是将表结构和物理层次删除。
  • truncate table student 清空表段中的所有数据页,物理层次彻底删除,磁盘空间立刻释放,HWM高水位线会降低。

DCL

略。

DQL条件查询

例子:
条件查询语句:group by 用来站队、统计。
select stuAge count(stuId) from table_student group by stuAge;

2、having limit

3、select 多表查询连接介绍
内连接:
外连接

  • 左外连接:左表所有数据、右表满足条件的数据
  • 右连接
  • joint sth on 条件;
  • left join sth on 条件。
    4、
    – IN :查询某个范围内的数据.
    – order by :排序.(desc是降序,asc是升序)
    – limit num:从第一条开始取出num条记录.
    5、查询结果去重复
    select distint(stuname) from table_name;
    6、information schema
    MySQL中,把 information_schema 看作是一个数据库,确切说是信息数据库。其中保存着关于MySQL服务器所维护的所有其他数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权 限等。在INFORMATION_SCHEMA中,有数个只读表。它们实际上是视图,而不是基本表,因此,你将无法看到与之相关的任何文件。
    例如:统计每个库占用空间的大小。
    元数据:数据库中表示数据的数据。
    7、concat命令,拼接
    与group by联合使用
    8、case语句,多次判断,多种输出
    9、Btree
    聚簇索引BTree结构,
  • 数据有主键
  • 若没有主键,则自动选择唯一键的列(uniq)作为索引(innoDb独有)
  • 以上都没有 ,mysql数据库引擎也能自动生成隐藏索引(根据数据的hash值)。
    辅助索引:弥补非聚簇索引以外的列的索引

新的part

2020年6月初:我感觉看视频还是太慢了,然后去找了点相关是书籍,配合着看。
书我下载了**《sql必知必会》《mysql技术内幕:sql编程》**的pdf版本。
sql必知必会比较浅显,读起来很友好,可以让我快速的了解各个方面。
同时,这本书还有配套的数据源码,解决了我看视频时无法拿数据跟着做实验的痛点。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值