MySQL的增删改查(基础)

目录

一、MySQL的数据增加

二、MySQL的数据查找

1.全列查询

2.指定列查询

3.查询字段为表达式

4.查询的时候给列/表达式起别名

5.查询时去重

6.排序查询

7.条件查询

三、MySQL的数据删除

四、MySQL的数据修改


一、MySQL的数据增加

  在我们了解了如何创建数据库以及在数据库中创建表以后,我们便要对该表进行一个赋值操作,同样这里演示的是student的一张表,首先创建一张表:

create table student(id int,name varchar(20));

  我们首先创建一个只有两个变量的表,接下来向表中加入数据,示例如下:

insert into student(1,'zhangsan'),(2,'lisi'),(3,'wangwu');

  如上述代码所示,我们所要增添数据的顺序必须是创建表的时候所设置的数据类型的顺序,必须要一一对应,我们可以一次性插入多条数据,数据之间由逗号隔开,如上述代码所示,也可以分多次插入,那么就要写多条语句进行操作,如下述代码所示:

insert into student(1,'zhangsan');
insert into student(2,'lisi');
insert into student(3,'wangwu');

  两种方法都可以实现对表的内容新增操作,但是我们更推荐第一种写法,由于MySQL是一个客户端服务器的数据库,我们每一次发送一个插入请求,都是一次客户端与服务器的交互,每一次的交互都需要付出一定的成本,而我们一次性插入数据,就可以尽量减少交互的时间,这样就能保证数据库的高效操作。

二、MySQL的数据查找

  MySQL的查询分为很多种,我们先从最基本的查询开始。

1.全列查询

  全列查询便是将表中所有的数据进行一个展示,全列查询代码如下:

select * from student;

(其中的*表示的是占位符)

2.指定列查询

  列查询是指定一列数据进行展示,列查询代码如下:

select id from student;

  上述代码我们指定只查询id这一列的数据,那么结果如下:

3.查询字段为表达式

  查询字段为表达式的意思就是说,我们在查询表的内容时,列是可以进行一个简单的运算操作的,比如我们将student表中的id都增加1,代码如下:

select id+1,name from student;

  如上图所示,id这一栏的列名变成了id+1,但是这一操作并不会改变id这一列的原始数据,我们再进行一次全列查询,结果如下:

  我们可以看到,表的内容并没有发生改变,那么这是为什么?实际上,我们通过查询字段进行这种简单操作以后查找出来的表是一个临时表,select中无论怎么写,都是不会影响硬盘中存储的mysql的数据的,因为mysql是一个客户端服务器结构的程序。还需要注意的一点是,这个表达式的四则运算是针对于数字而言的,如果是字符串+字符串这样的形式,是会出现问题的。

4.查询的时候给列/表达式起别名

  有时候我们觉得表达式或者列名太长,我们可以给它们起个别名,这样就能更加简洁,代码如下:

select id + 1 as id2 from student;

  当然我所展示的都是比较简单的数据,所以起别名并没有必要,这里只是作为一个展示。

5.查询时去重

  数据是可能出现重复的,但是我们有时候不需要这些数据多次重复出现,又该怎么办呢?那么方法如下,使用distinct来让重复的数据消失,代码如下:

select distinct id from student;

  id重复为3的数据就被省略掉了,distinct后面的列名可以是多个,但必须要求所有列的数据都是重复的,才算“重复”。

6.排序查询

  数据是有顺序的,可以针对结果进行排序,我们现在重新创建一个score表,为了操作方便,我们将数字型数据都设为整型:

create table score(name varchar(20),chinese int,math int,english int);

  初始向该表中插入三条数据:

insert into score values('zhangsan',40,50,60),('wangwu',50,60,70),('lisi',60,70,80);

  那么我们按照语文成绩按从大到小的顺序排列:

select * from score order by chinese desc;

  同样的,order by 后面也可以跟很多列,会先按照第一个列进行排列,然后再按照第二列排列,如果我们要升序排列的话,删除desc即可,因为我这里的数据并没有设计好,所以才使用降序的方式去展示。

7.条件查询

  运算符:

 

  格式:

select 字段 from 表名 where 条件;

  比如我们要查询语文成绩大于等于60分的同学的所有成绩,代码如下:

select * from score where chinese >= 60;

  注意:我们在如java和c语言等语言中都知道,”=“是赋值操作符,而“==”是判断相等的操作符,但是在sql中,“=”实际上是判断相等的操作符,同时也能充当赋值操作符,主要根据当时的要求而定。以及在sql中我们是不能用 NULL = NULL去判断两个空值相等的,我们应当用 NULL<=>NULL去判断空值相等。

三、MySQL的数据删除

  在我们了解了条件查询以后,就要将条件查询与删除操作合并起来使用,比如说,我们要删除一条name 为 lisi 的一条数据,代码如下:

delete from score where name = 'lisi';

  这样就完成了单条数据的删除,这个操作是带有风险性的,所以必须谨慎使用!

四、MySQL的数据修改

  同删除一样,修改数据我们也得使用到条件查询,所以这么一看,对于数据查找的操作十分重要,加入我们要将wangwu同学的chinese成绩修改为60,那么代码如下:

update score set chinese = 60 where name = 'wangwu';

  

  我们可以观察到数据成功完成了改变,这个操作是会保留到硬盘上的,所以不用担心之后会消失。

  综上就是MySQL的增删改查的基础操作,其中还有一部分内容需要注意,我将单独写一篇来讲注意事项,如果有错误,请指出,感谢阅读。 

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值