MySQL数据库知识点总结

本文详细介绍了SQL的各种操作,包括DQL、DML、DDL、TCL和DCL,涵盖查询、增删改查、事务处理、数据函数、分组聚合、连接查询、子查询、视图、索引以及数据库三范式。还讨论了存储引擎、事务的四大特性以及如何创建和管理表。通过对SQL的深入理解,读者可以更好地掌握数据库管理。
摘要由CSDN通过智能技术生成

SQL分类

DQL:数据查询语言(select)

DML:数据操作语言(增删改,针对表中的数据)

DDL:数据定义语言(带有create,drop,alter的,针对表结构)

TCL:事务控制语言(事务提交commit、回滚rollback)

DCL:数据控制语言(授权grant、撤销权限revoke)

DQL语句

1.查询一个字段:select 字段名 from 表名;

2.查询多个字段:select 字段1,字段2,字段3 from 表名;

3.查询所有字段:select * from 表名;

4.起别名:使用as关键字:select dept as des from depts;

5.条件查询

大于,小于,等于,不等于,小于等于,大于等于

eg:select  empno,sal,ename from emp where sal<2000;

between...and...两个值之间(左小右大)

eg:select empno,ename,sal from emp where sal between 2540 and 5000;

and 并且

eg:select empno,ename,job,sal from emp where job="" and sal>2500;

or 或者

eg:select empno,ename,job,sal from emp where job="" or sal>2500;

注意:and和or同时出现,and优先级比较高

in 包含

eg:select empno,ename,job,sal from emp where job in ("","");

like模糊查询,支持%和下划线-匹配(%任意多个 _任意一个)

select ename  from emp where ename like "%o%;

select ename  from emp where ename like "%\_%;注意\转义字符

6.排序 order by 

select ename,sal from emp order by sal desc;#降序

7.数据处理函数/单行处理函数

lower转换小写,upper转换大写,substr取子串,length取长度,trim去空格,

str-to-date字符串转换为日期

8.分组函数

count,sum,arg,max ,min

注意:分组函数不能直接使用在where子句中

分组查询:group by

having和group by进行二次过滤

 

9.distinct关键字去重

10.连接查询

分类:①内连接:等值连接      非等值连接     自连接

②外连接:左连接  右连接

11.内连接之非等值连接

select e.ename,e.sal,s.grade from emp e join sal.grades on e.sla between s.local and s.hisal;

12.外连接(右连接

eg: select e.ename,d.dname from emp e right join dept d on e.deptno =d.deptno;

子查询

1.where中的子查询

eg:select ename,sal from emp where sal>(select min(sal) from emp);

2 union 合并的用法

select ename ,job from where job="MADFK"

union

select ename,job from where job="KAHF";

注意:union效率要高一些,union可以减少匹配的次数,还可以完成两个结果集的拼接

4.limit通常使用在分页查询中

eg:select ename ,sal from emp order by sal desc limit 5;

取出工资排名在3-5之间的员工

eg: select ename,sal from  emp order by sal desc limit 2,3;

5.表的创建

create table 表名(

字段名1  数据类型,

字段名2   数据类型

);

常见数据类型:varchar,char ,int ,bigint,float,date...

6.删除表

drop table if exists 表名;

注意:delect 删除表中的数据,但是磁盘上的真是存储空间是不会被释放的,支持回滚数据,

7.插入数据

insert into 表名(字段1,字段2,,,)values (值1,值2,,,);

8 .修改表  updata

9.约束 constraint

作用:保证表中数据的有效

常见约束:非空约束,唯一性约束,主键约束,外键约束,检查约束

存储引擎

一个表存储/组织数据的方式

常见的存储引擎:MyISAM,InnoDB,MEMoRY

事务

一个事务其实就是一个完整的业务逻辑,是一个最小的工作单元,不可再分

事务四大特性:①原子性:事务是最小的工作单元,不可再分

②一致性:在同一事务中,要么同时成功,要么同时失败

③隔离性:事务A与事务B之间具有一定的隔离

④持久性:事务是用来结束的一个保障,相当于将没有保存在硬盘上的数据保存到硬盘上

索引

创建和删除:create index emp_ename_index on emp(ename);

drop index emp_ename_index  on emp;

注:索引是数据库进行优化的手段

视图

站在不同的角度看待同一份数据

create view emp_view as select * from emp;

只有DQL才能以view方式创建

对视图对象增删改,会导致原来的表被操作

数据库三范式

第一范式:要求在任何一张表中必须要有主键,每一个字段原子性不可再分

第二范式:在第一范式的基础上,要求所有的非主键字段完全依赖主键,不要产生部分依赖

第三范式:在第二范式基础上,要求所有的非主键字段直接依赖主键,不产生传递依赖

公式

第二范式:多对多,三张表,关系表两个外键

第三范式:一对多,二张表,多的表加外键

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值