MySQL -- 基础复习Part01

MySQL复习day01

管理MySQL数据库的一些图形化工具

推荐Navicat、DataGrip,任选其一即可(Navicat是收费的)

SQL分类

1.DDL

– 数据定义语言 Data definition Language

show databases

select database();

create database [ if not exists ] 数据库名 [ default charset 字符集 ] [ collate 排序规则 ]

可以通过create创建数据库或者数据库,alter修改,drop删除

use+数据库名 切换数据库

desc+表名 查看表结构

通过alter可以修改表的结构,新增字段、修改字段或者删除字段

例如:alter table 表名 add 字段名 类型(长度)([注释]) [约束]

2.DML

– 数据操作语言 Data Manipulation Language

INSERT UPDATE DELETE

3.DQL

– 数据查询语言 Data Query Language

关键字 – SELECT

查询的几种类型

  • 基本查询 – 可以查询多个字段 可以为表起别名 可以使用DISTINCT去重

  • 条件查询 WHERE

    模糊查询 LIKE(%匹配任意个字符,_匹配单个字符)

  • 聚合函数 COUNT MAX MIN AVG SUM

    SELECT 聚合函数(字段列表) FROM 表名;

  • 分组查询 GROUP BY

    WHERE/HAVING:where在分组前过滤,having在分组后

  • 排序查询 ORDER BY

    ASC/DESC 升序/降序

  • 分页查询 LIMIT

    SELECT 字段列表 FROM 表名 LIMIT 起始索引,查询记录数;

实际开发中尽量不要使用*,会影响性能

4.DCL

– 数据控制语言 Data Controll Language 管理数据库用户、控制数据库的访问权限

通过select * from mysql.user;可以查看当前所有用户

CREATE USER '用户名' @ '主机名' IDENTIFIED BY '密码'

ALTER USER '用户名'@'主机名' IDENTIFIED WITH mysql_native_password BY '新密码' ;

DROP USER '用户名'@'主机名' ;

tips:

MySQL中通过用户名@主机名的方式唯一的标识一个用户

且主机名可以使用%通配

权限 – ALL PRIVILEGES/INSERT/SELECT/UPDATE/DELETE/ALTER/DROP/CREATE

查询权限 SHOW 赋予权限GRANT 撤销权限REVOKE

SHOW GRANTS FOR '用户名'@'主机名' ;

GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';

REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';

函数

MySQL提供的函数 – 主要有字符串函数、数值函数、日期函数、流程函数

字符串函数

只列举关键字,具体的想不起来自行查

CONCAT(s1,s2…sn)

LOWER(str)

UPPER(str)

LPAD(str,n,pad)

RPAD(str,n,pad)

TRIM(str)

SUBSTRING(str,start,len)

数值函数

CELL(x)

FLOOR(x)

RAND()

ROUND(x,y)

MOD(x,y)

日期函数

CURDATE

CURTIME

NOW

YEAR(date)

MONTH(date)

DAY(date)

DATEADD(date,时间间隔)

DATEDIFF(date1,date2)

流程函数

IF(value,t,f)

IFNULL(value1,value2)

CASE WHEN [value1] THEN [res1] … ELSE [default] END

CASE [expr] WHEN [value1] THEN [res1] … ELSE [default] END

约束

种类:NOT NULL/PRIMARY KEY/FOREIGN KEY/CHECK/DEFAULT/UNIQUE

多表查询

连接查询

内连接
外连接
左连接
右连接
自连接
自连接查询

​ 需要为表起别名

联合查询

​ union all不去重 union去重

子查询

也叫嵌套查询

事务

事务是一组操作的集合,要么同时成功,要么同时失败

提交commit 回滚 rollback 开始事务 start transaction/begin

事务四大特性

ACID

并发事务问题

1.脏读

2.不可重复读

3.幻读

事务隔离级别

1.读未提交

2.读已提交

3.可重复读(默认)

4.串行化

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值