MySQL表的增删改查

本文详细介绍了MySQL的四大基本操作:新增(Create)、删除(Delete)、修改(Update)和查询(Retrieve),包括单表查询的全列、指定列、去重、排序和条件查询,以及分页查询。此外,还涵盖了多表查询的聚合、内连接、外连接、自连接、子查询和合并查询,提供了丰富的语法示例和说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一·新增(Create)

1.1语法

INSERT INTO <表名>[(字段1 字段2 … 字段n)] VALUES(<值1,值2…值n>)

1.2例子

新增需要首先建立一张表才可以添加元素
这里先创建一张学生表

create table student(
  id int,
  sn int comment '学号',
  name varchar(20) comment '姓名',
  email varchar(20) comment '邮箱‘
  );

1.2.1单行数据+全列插入

--插入一条记录,插入的表中元素必须和定义表的列的数量及顺序完全一致
insert into student values(100,10001,’小明‘,’2348@126.com');
insert into student values(101,10002,’小李‘,’2356@126.com');

1.2.2多行数据+值定列插入

--插入多条记录,插入的表中元素必须和值定的列的数量及顺序完全一致
insert into student(id,sn,name)values
(102,10002,’小华‘),
(103,10003,’小纪‘),
(104,10004,’小五‘);

1.2.3插入查找值(结合了查找的语句)

-- 将学生表(student)中的姓名,邮箱,所有数据复制到用户表(test_user)
insert into test_user(name, email) select name, qq_mail from student;

二·删除(Delete)

2.1语法

**DELETE FROM <表名> [WHERE <条件>] **
[]表示可添加的方式
WHERE <条件>:删除对应条件的数据

2.2例子

--删除student表中所有信息
delete from student;
--删除student表中叫小明同学的信息
delete from student where name = ‘小明’;

三·修改(Update)

3.1语法

**UPDATE <表名> SET <修改的内容>[where] **
[]表示可添加的方式
WHERE <条件>:删除对应条件的数据

3.2例子

--将小明同学的学号修改为109
update student set sn=109 where name = ‘小明’;
--将小李同学的id翻倍
update student set id=id*2 where name = ‘小李’;

四·单表查询(Retrieve)

4.1语法

SELECT <列名> SET <修改的内容>[where] […]
[]表示可添加的方式
WHERE <条件>:删除对应条件的数据

4.2例子

--我们这里先设置一个成绩表
drop table if exists exam_result;
create table exam_result(
id int,
name varchar(20),
chinese decimal(3,1),
math decimal(3,1),
english decimal(3,1)
);
-- 插入测试数据
INSERT INTO exam_result (id,name, chinese, math, english) VALUES
(1,'唐三藏', 67, 98, 56),
(2,'孙悟空', 87.5, 78, 77),
(3,'猪悟能', 88, 98.5, 90),
(4,'曹孟德', 82, 84, 67),
(5,'刘玄德', 55.5, 85, 45),
(6,'孙权', 70, 73, 78.5),
(7,'宋公明', 75, 65, 30);

4.3全列查询

--通常我们用 * 来表示全列
select * from exam_result;

在这里插入图片描述

4.3指定列查询

-- 查询id,姓名,和英语成绩(指定列的顺序不需要按定义表的顺序来)
SELECT id, name, english FROM exam_result;

在这里插入图片描述

4.4 查询字段为表达式及设置别名

select 字段名1 别名1,字段名2 别名2,[…] from 表名

-- 查询id,姓名,以及每人的英语成绩+10分的结果
SELECT id, 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值