MySQL 表的增删改查

一、什么是CRUD?

大家肯定跟我一样,看到CRUD这四个字母一头雾水,什么是CRUD呀?
这里我就为大家一一讲解:

CRUD 即增加(Create)、查询(Retrieve)、更新(Update)、删除(Delete)四个单词的首字母缩写

是数据库操作最基本的操作
也是未来我们进入公司实习,最开始的最日常的工作
由此可见,对我们未来涞水非常的重要


所以,接下来就让我们来看看具体什么是CRUD吧

二、新增(Create)

在MySQL中 使用 insert 来往表里插入数据

但是大前提是,选中数据库,并且创建好对应的表

inse into 表名 values  (列,列......)

括号里面的给出的数目和类型,都是要和表结构匹配的
在这里插入图片描述


那么这里就有人要问了,能不能插入字符串呢?
sql中,字符串是可以使用的
很多编程语言都没有“字符”类型,这种情况一般 ’ 和 " 都能表示字符串

但是MySQL 5,默认字符集是拉丁文,无法直接插入中文的,都需要在创建数据库的时候显示设定好的字符集
在这里插入图片描述
在这里插入图片描述

1、单行数据 + 全列插入

插入两条记录,value_list 数量必须和定义表的列的数量及顺序一致

如果列的类型不匹配MySQL会尝试自动把字符串转成整数,就会报错
在这里插入图片描述

这个时候,可以通过特殊的写好,让这种操作可以成功,比如指定列进行插入

2、多行数据 + 指定列插入

在这里插入图片描述
这个时候,在name 列是没有数据的
在这里插入图片描述


当然也可以一行插入多组数据
在这里插入图片描述

这个时候有的人就会想:一次插入十个数据 和 十次分别插入一个,哪个执行效率会比较高呢?
显然是一次插入十个数据
因为MySQL是通过客户端去找服务器,服务器接收到sql之后再进行处理的
因此,每个sql都涉及上述这样的交互过程
所以显然第一种情况会更好

3、插入特殊类型

上述我么都是进行了插入数字、字符串,相对于来说就比较简单

接下来我们进行插入datetime 类型

比较简单的写法,直接使用特定的格式化字符串,表示时间日期

在这里插入图片描述

在这里插入图片描述
这属于MySQL支持的一种标准化格式
这是一个“标准化时间字符串”,MySQL会自动解析这个字符串,转换成8个字节的时间戳

当然也可使用 now() 这样的函数,直接获取当前的时间日期
在这里插入图片描述
在这里插入图片描述

三、查询(Retrieve)

查询是数据库操作中最常见的用法
学好查询非常重要
接下来就让我们一起进入查询的学习

1、全列查询

select * from 表名;

这里 * 被称为通配符


注意:
select * from 表名; 这个操作非常危险
一旦表中数据量过大,就会导致整个数据库崩盘
并且可能会影响到索引的使用

在这里插入图片描述

2、指定列查询

select 列名, 列名...... from 表名;

在这里插入图片描述
在查询的时候 要确保列的名字 和 表的列的名字是一致的(顺序是随意的)

3、表达式查询

可以在查询的过程中,指定表达式(把查询出来的每一行,都带入表达式进行运算)
在这里插入图片描述
有的人在看到新查的表会有疑惑,这是个新的表吗?会在数据库中改变表吗?

在当前的表达式查询中,并没有修改服务器上硬盘存储的数据本题,只是在查询结果的基础上进行运算的,得到的是一个**“临时表”**

此处查询出来的临时表,每个列的类型不在受限于原始表

这个临时表在查询炒作结束的时候,数据就消失了,数据的本题内容不会发生任何改变

select 进行的任意操作,都不会修改数据本体!!!

4、指定别名

 select 表达式 as 别名 from 表名:

在这里插入图片描述

5、去重

查询的视乎,进行去重
查询结果中如果存在重复的元素,就只保留一个

select distinct 列名 from 表名;

在这里插入图片描述

6、排序

查询的同时,进行排序

select 列名 from 表名 order by 列名;

最后面那个列名,就是排序的一句(列名不一定出现在 select 的列名中)
在这里插入图片描述这样就构成了升序排序
在这里插入图片描述
这样就是降序排序 就是在后面加了dese


字符串虽然也可以排序,但是这个时候排序大部分情况 不符合需求
“字典序”中文字典序是没有意义的
在这里插入图片描述


order by 可以指定多个列来进行排序
指定多个列的时候,就也是带有“优先级”的
前面的列,优先级高,后面的优先级低
优先级高的列值相同,才会比较优先级低的列
在这里插入图片描述
先按照数学成绩排序,如果数学成绩相同,在按照语文成绩排序
在这里插入图片描述
先按照数学成绩升序排,如果数学相同,再按照语文成绩降序排
在这里插入图片描述
先按照数学成绩降序排,数学相同,再按照语文成绩降序排

7、条件查询

查询的时候,指定筛选条件
条件满足,这个数据就被保留(最为结果集,最终的结果集,就是所有满足条件)
不满足,这个数据直接跳过

执行条件查询的时候,就会遍历整个表,把每个记录都带入到条件中,看条件是否满足

在这里插入图片描述

基本查询:

  1. 查询英语成绩不及格的同学即英语成绩(< 60)
    在这里插入图片描述
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

柒柒要开心

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

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

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

打赏作者

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

抵扣说明:

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

余额充值