【MySQL】03 MySQL 的 CRUD

1.1 SQL 分类

操作 说明
DDL 用来操作数据库、表
DML 用来增删查表中数据
DQL 用来修改表中数据
DCL 用来控制数据库的访问权限以及创建用户


1.2 数据库操作(DDL)

1.2.1 创建(create)

语法

# 创建数据库
create database 数据库名称;

# 创建数据库并设置字符集
create database 数据库名称 character set(可简写 charset) 字符集;

# 判断数据库是否存在
if not exists

# 使用数据库
use 数据库名称;

# 查看正在使用的数据库
select database();

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

1.2.2 查询(read)

语法

# 查询所有数据库
show databases;

# 查询指定数据库
show create database/table 名称;

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

1.2.3 修改(update)

语法

# 修改数据库字符集
alter database 数据库名称 charset 字符集;

示例
在这里插入图片描述

1.2.4 删除(delete)

语法

# 删除指定数据库
drop database 数据库名称;

示例
在这里插入图片描述



1.3 表操作(DDL)

1.3.1 创建

语法

create table 表名(
  	 字段 类型,
     字段 类型,
     ···
     字段 类型
);

示例
在这里插入图片描述
常用数据类型

数据类型 说明
int 整型
bigint 长整型
double 小数
varchar 字符串
data 日期(yyyy-MM-dd)
datatime 日期(yyyy-MM-dd HH:mm:ss)
timestamp 时间戳(毫秒值)

注意
 最后一个字段不能加 “,”

1.3.2 查询

语法

# 查询数据库中所有表
show tables;

# 查询表结构
desc 表名;

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

1.3.3 修改

语法

# 修改表名
alter table 旧表名 rename to 新表名;

# 增加一列
alter table 表名 add 列名 类型;

# 修改列名/类型
alter table 表名 change 列名 新列名 类型;
alter table 表名 modify 类型;

# 删除列
alter table 表名 drop 列名;

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

1.3.4 删除

语法

# 删除表
drop table 表名;

示例
在这里插入图片描述



1.4 数据操作(DML)

1.4.1 新增

语法

# 新增表数据
insert into 表名(字段1,···,字段n) values(1,···,值n)

示例
在这里插入图片描述
注意
  ① 字段与值要一一对应
  ② 当省略字段时 默认为所有字段添加数据
  ③ 除数字,其他类型都需要引号(单双皆可)

1.4.2 复制

# 将表2复制到表1(仅有结构)
create table1 like2;

# 复制表结构和数据
create table 新表 select * from 被复制表;

1.4.3 删除

语法

# 只当条件删除数据
delete from 表名 where 条件;

示例
在这里插入图片描述
注意
  ① 不加条件则删除表中所有数据
  ② 删除所有数据一般使用 :TRUNCATE TABLE 表名; (删除表后创建一个一摸一样的表)

1.4.4 修改

语法

update 表名 set 列名1 =1,···,列名n = 值n where 条件;

示例
在这里插入图片描述
注意
  ① 不加条件则修改所有数据



1.5 数据查询

1.5.1 基础查询

语法

# 查询表中所有数据
select * from 表名;

# 查询指定列数据
select 字段1,···,字段n from 表名;

# 去除重复数据
select distinct 列名 from 表名;

示例
在这里插入图片描述
注意
  ① 如果字段为空可以使用 ifnull(1,2) 替换 1:需要判断的字段;2:为空后替代的值。
在这里插入图片描述
  ⑤ 可以使用 AS 给字段起别名,方便查看,其中 AS 可以省略。
在这里插入图片描述

1.5.2 条件查询

语法

# 条件查询
select * from 表名 where 条件;

运算符

符号 描述 备注
= 等于
<>, != 不等于 不推荐使用 !=
> 大于
< 小于
<= 小于等于
>= 大于等于
BETWEEN 在两值之间 >= min && <= max
NOT BETWEEN 不在两值之间
IN 在集合中
NOT IN 不在集合中
<=> 严格比较两个 NULL 值是否相等 两个操作码均为 NULL 时,其所得值为 1;
而当一个操作码为 NULL 时,其所得值为 0
LIKE 模糊匹配
REGEXP 或 RLIKE 正则式匹配
IS NULL 为空
IS NOT NULL 不为空

猜你喜欢

转载自blog.csdn.net/Demo_Null/article/details/106475512