MySQL数据库中表操作之增删改查(CRUD)

目录

一、前言

二、增

1、单行数据插入

2、多行数据插入

三、查

1、全列查找

2、指定列查询

3、查询列为表达式

4、去重查询

5、 排序

1.升序

2.降序

 3.多字段排序

 6、条件查询

1.基本条件查询

2.AND OR

3.范围查询

4.in

5.模糊查询like

7、分页查询

1.limit n;

2.limit s,n;

3.limit n offset s;

 四、改

1、修改1

2、修改2

3、全部修改

五、删

1、全部删除

2、按排名删除

3、按条件删除


 

一、前言

在数据库中对表进行操作时,要先使用数据库

use 数据库名;

然后在数据库里创建表

create table students(
列名1 数据类型,
列名2 数据类型
…………,
);

 然后就可以操作表进行增删改查

二、增

1、单行数据插入

语法:insert into 表名 values(对应创建时的参数值);

 

 在这里输入名字是汉字时可能会报错,因为MySQL数据库的默认字符集是拉丁文,没有中文,需要修改,有两种方法在下一篇文章

2、多行数据插入

语法:insert into 表名(要指定插入的列) values

(对应数值),

(),

……,

();

 

指定输入了学号,姓名,语文跟数学成绩 

三、查

1、全列查找

语法:select * from 表名;

 

全列查找是比较危险的操作,如果存储的数据量级大会导致读取磁盘和写网卡的时间过长,有时可能会吃满

2、指定列查询

语法:select 指定列2,指定列2…… from 表名; 

 

当数据量级大时,也会存在一定风险

3、查询列为表达式

语法: insert 表达式 as 别名 from 表名;

只是临时表中数据按表达式计算输出,在服务器里的数据是没有变化的 

4、去重查询

语法:select distinct 列名 from 表名; 

 

 多列去重时只有对应列的都一样时才可以,比如语文英语两个人都一样才可以

5、 排序

1.升序

语法:select 要输出的列名1,2,…… from 表名 order by 待排列;

 

2.降序

语法: select 要输出的列名1,2,…… from 表名 order by 待排列 desc;

 

 3.多字段排序

语法:select  要输出的列名1,2,…… from 表名 order by 待排列1(desc),待排列(desc)2,……待排列n(desc);

 排序优先级按待排列顺序,排序方式对应待排列后是否有desc,有是降序,无是升序

 6、条件查询

1.基本条件查询

语法:select 要输出的列名 from 表名 where 条件;

 

在这里比较重要的是where后不可以使用别名,在执行时首先执行where后的语句,在执行select后面语句,别名是在select语句里的,执行where的时候是没有别名的

2.AND OR

语法: select 要输出的列名 from 表名 where 条件1and条件2 or 条件3;

 

and的优先级是高于or的 

3.范围查询

语法:

select 要输出的列名 from 表名 where 列 between n and m;

 

4.in

语法: select 要输出的列名 from 表名 where 列 in (数值1,数值2……);

 

待查询列数值满足in括号里的数值就输出

5.模糊查询like

 语法: select 要输出的列名 from 表名 where 列 like "值_(%)";

 

%表示多个任意字符,_表示任意一个字符 

7、分页查询

1.limit n;

select * from students where 条件 limit n;

满足条件的数据中从0开始筛选n条

 

2.limit s,n;

select * from students where 条件 limit s,n;

 

满足条件的数据中从第s开始筛选n条 

3.limit n offset s;

 elect * from students where 条件 limit n offset s;

 满足条件的数据中从第s开始筛选n条 

 四、改

1、修改1

update 表名 set 修改列1=n1,修改列2=n2…… where 条件;

 

2、修改2

update 表名 set  修改列1=n1,修改列2=n2…… order by 待排序字段(desc) limit n;

按条件排序后将前n条的数据进行对应修改 

3、全部修改

update 表名 set  修改列1=n1,修改列2=n2……;

将所有数据里的修改列进行对应修改

五、删

1、全部删除

delete from 表名; 

与drop table 表名;不同的是,这个只是删除表里的数据

 

2、按排名删除

delete from 表名 order by 待排字段(desc) limit n; 

按条件排序后删除前n个

 

3、按条件删除

delete from 表名 where 条件; 

按满足条件进行删除 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

1886i

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值