MySQL——增删改查操作

一、数据库的增删改查

语句中的'\[\]'是可选项,'{}'是必修项,'|'表示只能选择其中一项。

1.增加操作

create database if not exists 数据库名 \[default character set 字符集] collate 排序规则 ;

2.删除操作

drop database if exists 数据库名;

3.选择操作

use 数据库名;

4.查询操作

  • 查看所有数据库:show databases;
  • 查看数据库创建信息:show create datadase 数据库名;
  • 查看当前数据库:select database();

二、数据表的增删改查

1.增加操作

create table 表名(

字段1 类型comment 注释,

字段2 类型comment 注释...

) comment 注释;

2.删除操作

drop table if exists 表名;

3.修改操作

增加字段:alter table 表名 add 字段名 类型;

修改类型:alter table 表名 modify 字段名 新类型;

修改字段:alter table 表名 change 旧字段 新字段 新类型;

删除字段:alter table 表名 drop 字段名;

重新命名:alter table 表名 remane to 新表名;

4.查询操作

查看所有表:show tabels;

查看表结构:desc/describe table 表名;

查看建表语句:show create table 表名;

三、表格数据的增删改查

1.增加操作

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

当给表格所有字段赋值时,字段部分可省去,即insert into 表名 values(值1,值2...),(值1,值2...)...;

2.删除操作

delect table 表名 where 条件

3.修改操作

update 表名 set 字段1=值1,字段2=值2..where 条件;

4.查询操作

select 字段列表 from 表名列表

where 条件列表 group by 分组字段 having 条件列表 order by 字段列表 limit 分页参数;

(1)基本查询

  • 查询多个字段:select 字段1,字段2... from 表名;
  • 查询所有字段:select * from 表名;
  • 设置字段别名:select 字段1 \[as 别名1],字段2 \[as 别名2]... from 表名;
  • 去除重复记录:select distinct 字段 from 表名;

(2)条件查询:select 字段列表 from 表名列表 where 条件列表;

  • 比较条件
    • >,>=,<,<=,=,<>或!=
    • between...and...(含最大值最小值)
    • in
    • like 占位符(%占多个字符,_占一个字符)
    • is null
  • 逻辑条件
    • and或&&
    • or或||
    • not或!

(3)聚合函数(null不参与聚合函数计算):select 聚合函数(字段) from 表名列表;

  • 统计数量:count(count(*)表示统计总数量)
  • 求最大值:max
  • 求最小值:min
  • 求平均值:avg
  • 求和:sum

(4)分组查询:select 字段列表 from 表名列表 group by 分组字段 having 条件列表 ;

  • where不能对聚合函数进行判断,而having可以

(5)排序查询:select 字段列表 from 表名列表 order by 字段1 方式1,字段2 方式2...;

  • 升序:asc(默认,可省略不写)
  • 降序:desc
  • 如果是多字段排序,当第一个字段相同时,才会根据第二个字段排序

(6)分页查询:

  • 从起始索引开始查询几条数据:select 字段列表 from 表名列表 limit 起始索引,查询记录数;
    • eg:select x from x limit 3,4;表示查询第4-7条记录(不包括起始索引)
  • 跳过几条数据后查询几条数据:select 字段列表 from 表名列表 limit 查询记录数 offset 偏移量;
    • eg:select x from x limit 3 offset 5;表示查询第6-8条记录(跳过前5个后的3条记录)
相关推荐
Fibocom广和通34 分钟前
广和通推出RU311 5G RedCap模组,让中速终端更轻量接入5G
物联网·5g·redcap·通信·广和通·ru311
上学的小垃圾4 小时前
基于docker安装MySQL(openEuler系统)
linux·mysql·docker·容器
小淮AI4 小时前
从“刷题”到“追问”:AI课堂正在重塑哪些学习旧习惯?
人工智能·学习
码上上岸4 小时前
基于单片机的老人跌倒监测报警器设计与实现
stm32·嵌入式硬件·物联网·智能硬件·硬件
润乾软件4 小时前
SQLazy:分组累计求和
sql·sqlazy
wixzjsh5 小时前
TCP通信与HTTP协议学习笔记:粘包、三次握手、四次挥手与C/S、B/S模型
学习·tcp/ip·http
ZhiMuZhiLing5 小时前
拓客软件学习成本实测方法论:从注册到出第一批名单要多久
学习·流量运营·用户运营
倔强的石头_5 小时前
连接数失控排查:从数据库会话、应用线程池到连接池泄漏
数据库
程序员大雄学编程6 小时前
微积分46. 无穷级数四大核心性质:从理论到实践的全方位解析
python·学习·微积分·学习工具
hzxpaipai6 小时前
企业官网技术架构拆解:前端、后台、数据库、服务器如何协同
前端·数据库·架构