MySQL基本操作

DDL:数据定义语言,创建数据库和表字段
DML:数据操纵语言,数据的维护和查询

一、数据库操作

1.查询服务器上的所有数据库:
show databases;
2.创建数据库:
create database 数据库名
3.使用数据库:
use 数据库名
4.查询当前所在的数据库:
select database();
5.删除数据库:drop database 数据库名;

二、MySQL数据类型

常用的:
1.数值型:int / bigint
2.字符串类型:varchar / text
3.日期类型:datetime

三、表的操作用法

3.1表结构操作

1.创建表

语法:
在这里插入图片描述
示例:
在这里插入图片描述

2.删除表

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

3.查询所有表

在这里插入图片描述

4.查询表结构

在这里插入图片描述

5.修改表结构

5.1添加列

在这里插入图片描述

5.2删除列

在这里插入图片描述

5.3修改列

列已经有数据了不能删除只能修改,可以使用change语句
语法:
在这里插入图片描述
示例:
在这里插入图片描述

5.4修改表名

语法:
在这里插入图片描述

3.2表数据操作

1.添加

1.1全列添加

在这里插入图片描述

1.2指定列添加

在这里插入图片描述

2.查询

2.1全列查询

select * from score;

2.2指定列查询

select math,name from score;

2.3表达式查询

select name,math+chinese+english from score;
select name,math+10 from score;
注意:使用select 进行的表达式计算不会修改原表数据
在这里插入图片描述
在这里插入图片描述

2.4使用别名查询

select math+english+chinese as total from score;
在这里插入图片描述
在这里插入图片描述

2.5去重查询distinct

单行去重查询
在这里插入图片描述
多行去重查询
在这里插入图片描述
当distinct使用为多行去重查询,规则是:所有的联合字段全部相同才能去重,否则不去重

2.6排序order by

升序asc,降序desc,在不指定排序规则的情况下,默认使用的是升序asc
在这里插入图片描述
在这里插入图片描述
多列排序:当math成绩相同时,会根据第二规则chinese排序
在这里插入图片描述

2.7条件查询where

比较运算符:
在这里插入图片描述
条件运算符:
在这里插入图片描述
where条件查询中不能使用别名
在这里插入图片描述
常见面试题:
为什么在where条件查询中不能使用别名,但在oder by中可以?
MySQL执行顺序:
1.from阶段
2.where阶段
3.group by阶段
4.having阶段
5.select阶段
6.order by阶段
7.limit阶段
别名产生在第五个阶段,order by在第5阶段之后别名已经产生,而where在第五阶段之前,所以order by中可以用.
基本使用:
1.数学成绩为 NULL 的⼈
select * from score where name is null;
2.数学成绩及格的⼈
select * from score where math >= 60;
3.语⽂成绩⼤于数学成绩的⼈
select * from score where chinese > math;
4. 总成绩⼤于 150 分的⼈
select name,(math+chinese+english) from score where (math+english+chinese)>150;
5.语⽂成绩和数学成绩都 > 80 分的人
select * from score where chinese>80 and math>80;
6.语⽂成绩或数学成绩⼤于 80 分的⼈
select * from score where chinese>80 or math>80;
7.between x and y
select name,math from score where math between 60 and 90;
8.in 查询
数学成绩等于 99 和 100 分的同学:
select name,math where math in(90,100);
9.模糊查询
a.%:匹配任意个字符
b._:匹配一个字符
在这里插入图片描述
在这里插入图片描述
10.分页limit
a.select * from score limit 2;
在这里插入图片描述
b.select * from score limit 2offset2;表示查询两条数据,跳过前两条
在这里插入图片描述
c.select * from score limit 2,4;表示跳过前两条,限制查询4条
在这里插入图片描述
示例:
1.总分数排名前三
在这里插入图片描述
2.总分数第⼆⻚(4-6条数据)
在这里插入图片描述
3.limit x offset y(x,y 值超出不报错)
在这里插入图片描述

3.修改

3.1全部修改

update score set math=85;
在这里插入图片描述

3.2部分修改

update score set math=85 where name=‘刘备’;
在这里插入图片描述

3.3修改多列

update score set math=85,chinese=85 where name=‘刘备’;
在这里插入图片描述

3.4表达式修改

在这里插入图片描述

4.删除

4.1删除单条数据

delete from score where name=‘刘备’;

4.2全部删除

delete from score;
只是删除行数据,但表的结构依然存在

4.3truncate

truncate [table] 名称

4.4delete VS drop VS truncate

1.删除的影响范围:
drop(删除表,表结构不存在) > truncate(删除表中的所有数据) >= delete(删除部分或所有数据)
2.查询条件:
delete可以添加查询条件,但另外两个不可以
3.命令类型:
delete:DML
drop:DDL
truncate:DDL
4,数据恢复不同:
delete删除的数据可以恢复,但另外两个不可以
5.执行效率:
drop > truncate > delete

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值