【MySQL】-- 表的增删改查(基础)

1. 数据库操作

1.1 显示所有数据库

show databases;

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

1.2 创建数据库

create database [if not exists] 数据库名 [charset 字符集];

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

1.3 使用数据库

use 数据库名;

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

1.4 删除数据库

drop database 数据库名;

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

2. 数据类型

2.1 数值类型

数据类型大小说明
bit[(M)]M指定位数,默认为1二进制数,M的范围从1到64,存储数值范围从0~2^M-1
tinyint1字节
smallint2字节
int4字节
bigint8字节
float(M,D)8字节单精度,M表示长度,D表示小数位,会发生精度丢失
double(M,D)8字节
decimal(M,D)M/D的最大值+2双精度,M表示长度,D表示小数位,精确数值
numeric(M,D)M/D的最大值+2和decimal一样

2.2 字符串类型

数据类型大小说明
varchar(SIZE)0~65535字节可变长度数据
text0~65535字节长文本数据
mediumtext0~16777215字节长文本数据
blob0~65535字节二进制形式数据

2.3 日期类型

数据类型大小说明
datatime8字节范围1000~9999年,不会进行时区检索和转换
timestamp4字节范围1970~2038年,自动检索当前时区并进行转换

3. 表的操作

需要操作数据库中的表是,首先使用该数据库!

3.1 创建表

create table 表名 (字段1 类型 , 字段2 类型 ……);

示例:
在这里插入图片描述
可以使用comment添加字段说明:
在这里插入图片描述

3.2 查看表结构

desc 表名;

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

3.3 删除表

drop table 表名;

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

4. 表的增删改查

4.1 新增(create)

4.1.1 单行全列插入

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

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

4.1.2 多行全列插入

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

4.1.3 指定列插入

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

4.1.4 插入时间

示例:

  • 插入指定时间:
    在这里插入图片描述
  • 插入当前时间:
    在这里插入图片描述

4.2 查询(select)

select
[distinct] { * |(字段1,字段 2……)}
[as 字段名]
from 表名
[where…]
[order by 字段名 [ asc | desc ] ,…]
limit [offset];

4.4.1 全列查询

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

4.2.2 指定列查询

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

4.2.3 查询字段为表达式

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

4.2.4 别名(as)

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

4.2.5 去重(distinct)

示例:

  • 去重前:
    在这里插入图片描述
  • 去重后:
    在这里插入图片描述

4.2.6 排序(order by)

asc为升,desc为降序,默认为asc
示例:

  • 升序:
    在这里插入图片描述
  • 降序:
    在这里插入图片描述
  • 对多个字段进行排序:
    示例:
    在这里插入图片描述

4.2.7 条件查询(where)

比较运算符:

运算符说明
> , >= , < , <=大于,大于等于,小于,小于等于
=等于,NULL 不安全,例如 NULL = NULL 的结果是 NULL
<=>等于,NULL 安全,例如 NULL <=> NULL 的结果是 TRUE(1)
!=, <>不等于
between x and y范围匹配,[x , y] , 如果 x >= value <= y 则返回true
in (option, …)如果是 option 中的任意一个,返回 true
is null是null
is not null不是null
like模糊匹配,%表示多个任意字符(包括0个),_表示一个任意字符

逻辑运算符:

运算符说明
and多个条件必须都为 true,结果才是 true
or任意一个条件为 true, 结果为 true
not条件为true时,结果为false
示例:
  • 英语成绩小于60分的同学
    在这里插入图片描述

  • 语文成绩比英语好的同学
    在这里插入图片描述

  • 总分在200分以下的同学
    在这里插入图片描述

  • 语文大于80,并且英语大于80的同学
    在这里插入图片描述

  • 语文大于80,或英语大于80的同学
    在这里插入图片描述

  • 语文成绩在80~90之间的同学
    在这里插入图片描述

  • 查询语文成绩是 59 或 56 或 89 或 92 的同学
    在这里插入图片描述

  • 查询姓孙的同学
    在这里插入图片描述

  • 查询语文成绩为null的同学
    在这里插入图片描述

4.2.8 分页查询(limit)

示例:

  • 查询前3条记录:
    在这里插入图片描述

  • 从第3条开始向下查找3条记录:
    在这里插入图片描述
    分页查询也可以和前面那些查询搭配使用的
    示例:

  • 查询总分前三名同学的信息:
    在这里插入图片描述

4.3 修改(update)

update 表名 set 字段 = [值1,值2……] [where…] [order by…] [limit…];

示例:

  • 把孙悟空的数学成绩变更为80分
    在这里插入图片描述
  • 把孙权的语文成绩改为70分,数学成绩改为60分
    在这里插入图片描述
  • 将总成绩倒数前三的 2 位同学的数学成绩加上 10 分
    在这里插入图片描述
  • 将所有同学的语文成绩更新为原来的0.5倍
    在这里插入图片描述

4.4 删除(delete)

delete from 表名 [where…] [order by…] [limit…];

  • 删除孙悟空的成绩
    在这里插入图片描述
  • 删除表里所有元素
    在这里插入图片描述
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值