【MySQL】MySQL基础知识复习(上)

前言

本篇博客将复习MySQL的基础知识,及着重复习CRUD(增删查改)操作。

目录

一.MySQL数据库基础知识

1.数据库操作

1.1显示当前的数据库

[1.2 创建数据库](#1.2 创建数据库)

[1.3 使用数据库](#1.3 使用数据库)

[1.4 删除数据库](#1.4 删除数据库)

2.数据类型

2.1.数字类型

2.2字符串类型

2.3日期类型

3.数据库表操作

3.1查看表

3.2创建表

3.3查看表结构

3.4删除表

二.CRUD(重点)

1.新增(Create)

2.查询(Retrieve))

2.1全列查询

2.2指定列查询

2.3查询字段为表达式

2.4别名

2.5去重查询:DISTINCT

[2.6排序查询:ORDER BY](#2.6排序查询:ORDER BY)

2.7条件查询(重要)

2.8分页查询:LIMIT

三.修改(Update)

四.删除(Delete)​​​​​​​


一.MySQL数据库基础知识

1.数据库操作

1.1显示当前的数据库

sql 复制代码
SHOW DATABASES;

1.2 创建数据库

语法:

sql 复制代码
CREATE DATABASE 数据库名;

示例,创建一个名为test的数据库

sql 复制代码
create database test;

此时,显示数据库,我们将看到刚才所创建的数据库

1.3 使用数据库

sql 复制代码
USE 数据库名

1.4 删除数据库

注:删除数据库是个高危操作

语法:

sql 复制代码
 DROP DATABASE 数据库名;

数据库删除以后,内部看不到对应的数据库,里边的表和数据全部被删除

2.数据类型

2.1.数字类型

分为整型和浮点型:

2.2字符串类型

上述字符串类型中,我们最常用的为VARCHAR()类型,也是最推荐使用的类型。

VARCHAR()与存储的都是文本数据类型

BLOB存储的为二进制类型,若要存储图片,视频,音频等,可用BLOB

2.3日期类型


上述数据类型看似多,但有些已经被淘汰,我们只需重点掌握以下几个数据类型即可:

1)int

2)bigint

3)double

4)decimal

5)varchar

6)datetime

3.数据库表操作

在进行数据库表操作前,我们应进入已有的数据库中,例如:

3.1查看表

查看当前数据库下,有多少个表

sql 复制代码
show tables;

由于此数据库为刚创建的,未创建任何的表,所以返回Empty set。

3.2创建表

sql 复制代码
CREATE TABLE 表名(列名 类型,列名 类型, 列名 类型,.....);

例如:创建一个简易学生表

3.3查看表结构

sql 复制代码
 desc 表名;

可以查看到有哪些列,每个列是什么样的,不能看到表里的内容。

3.4删除表

sql 复制代码
DROP TABLE 表名;

注:删表操作与删库操作一样都是高危操作,且删表操作比删库操作隐蔽性更强,造成的损失可能会更大。

二.CRUD(重点)

CRUD 即增加(Create)、查询(Retrieve)、更新(Update)、删除(Delete)四个单词的首字母缩写

1.新增(Create)

语法:

sql 复制代码
insert into 表名 values(值,值,值.....)  这里的个数和表结构要匹配

增加可一次增加一行数据,也可以一次性增加多行数据。

语法:

sql 复制代码
insert into 表名 values(值,值,值.....) ,(值,值,值.....),(值,值,值.....);

我们也可以指定一个要插入的值,其他未指定的则会设为空(NULL)

sql 复制代码
insert into 表名(列名) values(值);

例如:

2.查询(Retrieve)

2.1全列查询

查询出这个表中的所有的行和所有的列

sql 复制代码
select * from 表名;

*称为通配符,指代所有的列

2.2指定列查询

查询的时候手动指定列名,得到结果就是与列名相关联的。

sql 复制代码
select 列名,列名......from 表名;

2.3查询字段为表达式

新建一个表,方便观察。

表达式可以对表中数据进行处理后查询

例如:查询每个人english成绩+10后的结果

注:这样的结果只是数据库生成的临时表,数据库中的数据并没有改变

2.4别名

如果查询的表达式简单,我们可以一眼看明白。

如果表达式比较复杂,就无法直观的观察了。

此时就可以给表达式起别名,别名就是查询结构的列名。

sql 复制代码
select 列名 as 别名 from 表名;

例如:

注:as可以省略

2.5去重查询:DISTINCT

多行的数据可能会出现有重复的,去重后只会保留一份

语法:

sql 复制代码
select distinct 列名 from 表名;

2.6排序查询:ORDER BY

ORDER BY默认为升序排列

语法:

sql 复制代码
select ....from 表名 order by 列名;

例如:以语文成绩为准进行排序

若需要降序排序,在order by后面的列中加入desc关键字,即可降序排序

order by也可以指定多个列来进行排序,多个列间先按照第一列来排序,若第一列相同则根据第二列进行排序

2.7条件查询(重要)

查询过程中指定筛选条件,满足条件的记录保留,不满足的排除。

语法:

sql 复制代码
select 列名 from 表名 where 条件;

例1:查询英语不及格的同学及英语成绩 ( < 60 )

例2:查询语文成绩好于英语成绩的同学

例3:查询总分在 200 分以下的同学

模糊查询:LIKE

不要求完全相等,只要满足一定条件即可查询,需搭配通配符来描述条件

% 匹配任意多个(包括 0 个)字符

_ 匹配严格的一个任意字符

例如:查询以孙为开头的同学信息

2.8分页查询:LIMIT

limit可以用来限制查询的个数,防止因查询的数据过于庞大导致机器挂掉

语法:

sql 复制代码
从 0 开始,筛选 n 条结果
select *from 表名 limit n;
sql 复制代码
从 s 开始,筛选 n 条结果
select * from 表名 limit s,n;
sql 复制代码
 从 s 开始,筛选 n 条结果,比第二种用法更明确,建议使用

select * from 表名 limit n offset s;

例如:

三.修改(Update)

语法:

sql 复制代码
update 表名 set 列名=值,列名=值,......;

例如:将孙悟空同学的数学成绩变更为 80 分

四.删除(Delete)

sql 复制代码
DELETE FROM  表名 [WHERE ...] [ORDER BY ...] [LIMIT ...]

注:删除操作是一个危险操作,如果不加限制,会直接将表的全部数据删除。

例:删除孙悟空同学的数据


以上便是全部内容,如有不对,欢迎指正

相关推荐
一屉大大大花卷27 分钟前
初识Neo4j之入门介绍(一)
数据库·neo4j
叁沐40 分钟前
MySQL 08 详解read view:事务到底是隔离的还是不隔离的?
mysql
周胡杰1 小时前
鸿蒙arkts使用关系型数据库,使用DB Browser for SQLite连接和查看数据库数据?使用TaskPool进行频繁数据库操作
前端·数据库·华为·harmonyos·鸿蒙·鸿蒙系统
wkj0011 小时前
navicate如何设置数据库引擎
数据库·mysql
ladymorgana1 小时前
【Spring Boot】HikariCP 连接池 YAML 配置详解
spring boot·后端·mysql·连接池·hikaricp
赵渝强老师1 小时前
【赵渝强老师】Oracle RMAN的目录数据库
数据库·oracle
暖暖木头1 小时前
Oracle注释详解
数据库·oracle
御控工业物联网1 小时前
御控网关如何实现MQTT、MODBUS、OPCUA、SQL、HTTP之间协议转换
数据库·sql·http
GJCTYU3 小时前
spring中@Transactional注解和事务的实战理解附代码
数据库·spring boot·后端·spring·oracle·mybatis
MicroTech20253 小时前
微算法科技(NASDAQ: MLGO)探索Grover量子搜索算法,利用量子叠加和干涉原理,实现在无序数据库中快速定位目标信息的效果。
数据库·科技·算法