0
点赞
收藏
分享

微信扫一扫

MySQL表的增删改查基础操作


✔????引言????✔


在前一篇博客给大家介绍了如何去​​创建数据库数据表​​​以及一些相关基本操作的博客,如果有遗忘或者感兴趣的同学可以去看看,今天给大家介绍 MySQL表的增删查改等操作

????


文章目录

  • ​​✨增添​​
  • ​​✨查找​​
  • ​​✨1.全列查找​​
  • ​​✨2.指定列查找​​
  • ​​✨3.指定查询字段为表达式​​
  • ​​✨4.查询字段指定别名​​
  • ​​✨5.针对查询结果去重​​
  • ​​✨6.排序,针对查询结果(临时表)进行排序​​
  • ​​✨7.select中的条件查询​​
  • ​​✨8.模糊匹配​​
  • ​​✨ 9.查询语句中,和NULL进行比较​​
  • ​​✨10.分页查询​​
  • ​​✨修改操作​​
  • ​​✨删除操作​​
✨增添

语法:​​insert into 表名 values(值,值,值....)​

MySQL表的增删改查基础操作_表名

增加后我们查询我们的表,那就是这样子的:

MySQL表的增删改查基础操作_表名_02

✨查找
✨1.全列查找


最基础的查找,全列查找,直接把一个表所有的列,和所有的行都查询出来~
语法:​​select * from 表名​​* 叫做"通配符",表示一个表的所有列


MySQL表的增删改查基础操作_java_03

把一个表里面的所有行和所有列都查找出到,查找的结果是一个​​“临时表”​​,之前我们说的 数据库 的表都是在硬盘上的,而此处的这个查询结果 临时表 ,不是在硬盘上,而是在内存中,随着进行了输出之后,数据也就被释放了~

注意:


像​​select * from 表名​​ 这个操作也是一个 危险操作!
如果在生产环境的服务器上,执行,很可能带来灾难!所以我们以后出去工作的时候一i的那个要注意!!!


✨2.指定列查找


语法:​​select 列名,列名.... from 表名;​


MySQL表的增删改查基础操作_mysql_04

✨3.指定查询字段为表达式


在查询的时候,同时进行一些​​运算操作​


例如:期望查询的结果中的语文成绩比真实的多10分

MySQL表的增删改查基础操作_sql_05

查询一下每个同学的总分(语文+数学+英语)

MySQL表的增删改查基础操作_java_06


注意: 临时表中的结果的数据类型不一定和原始的表的数据类型完全一致,临时表的类型会自动的适应,保证计算结果是i正确的


✨4.查询字段指定别名


查询字段指定别名,相当于是给查询的结果的临时表,指定新的列名


MySQL表的增删改查基础操作_数据库_07

省略 as 之后 :

MySQL表的增删改查基础操作_java_08

虽然执行结果完全相同,但是这里 total 这个别名和前面的表达式区别不明显,稍微一眼花,就把 total 当成数据库自身的一列。

✨5.针对查询结果去重


语法:​​select distinct 列名 from 表名;​


MySQL表的增删改查基础操作_sql_09

**注意:**如果针对多个列来进行去重,就得多个列的值都相同的时候才视为重复~

✨6.排序,针对查询结果(临时表)进行排序


语法:​​select 列名... from 表名 order by 列名 asc/desc​​;


例如:针对数学成绩进行升序排序~

MySQL表的增删改查基础操作_数据库_10

降序排序~

MySQL表的增删改查基础操作_数据库_11


有的数据库记录中是带有​​NULL​​​值的,像这样的 ​​NULL 认为是最小​​的


MySQL表的增删改查基础操作_表名_12

排序也可以依据表达式或者​别名​来进行排序

依据 表达式 排序

MySQL表的增删改查基础操作_sql_13

依据 别名 排序

MySQL表的增删改查基础操作_java_14

还可以通过 ​​order by​​ 来指定多个列 进行排序

先按照数学排序,如果数学成绩相同,再按照语文排序。

MySQL表的增删改查基础操作_mysql_15

✨7.select中的条件查询


在 ​​selcet​​ 的后面加上一个​​where 字句​​,后面跟上一个具体的​​筛选条件​语法;​​select 列名 from 表名 where 条件​​;

MySQL表的增删改查基础操作_表名_16

MySQL表的增删改查基础操作_mysql_17

MySQL表的增删改查基础操作_表名_18

MySQL表的增删改查基础操作_mysql_19

MySQL表的增删改查基础操作_表名_20

举几个 列子,便于大家理解:


1.查询英语不及格的同于及英语成绩(<60)
MySQL表的增删改查基础操作_表名_21



2.查询语文成绩好于英语成绩的同学
MySQL表的增删改查基础操作_java_22



3.查询总分在 200 分 已下的同学
MySQL表的增删改查基础操作_表名_23
注意:where 语句不能使用别名



4.查询语文成绩大于80,或英语成绩大于80的同学
MySQL表的增删改查基础操作_mysql_24
注意:AND 的优先级高于 OR,表达式里如果同时右 AND 和 OR ,先计算 AND 后 计算 OR,如果想要打破优先级,就需要加()
MySQL表的增删改查基础操作_java_25



5.查询语文成绩在[80,90]分的同学及语文成绩
MySQL表的增删改查基础操作_数据库_26



6.查询数学成绩是 58 或者59 或者 98 或者 99 的同学及数学成绩
MySQL表的增删改查基础操作_表名_27


✨8.模糊匹配


​like​​ 搭配通配符来使用,只要对方的字符串符合你此处的描述的一个形式就行.
​%​​ 代表任意个任意字符~
​_​​ 代表任意一个字符


例如:查找姓孙的同学的成绩

MySQL表的增删改查基础操作_sql_28


此处这里的​​'孙%'​​就能匹配到任意 孙 开头的字符串,其他的类型于这样的名字也能匹配到.
比如: ​​孙​​ ,或者 ​​孙sadsadasda​​ 但是类似于 这种就匹配不到:​​aaa孙aaa​​,​​bbb孙​



​_​​ 只能匹配带一个任意字符的


比如 只有一个 ​​_​​:

MySQL表的增删改查基础操作_数据库_29

有两个 ​​_​

MySQL表的增删改查基础操作_表名_30

✨ 9.查询语句中,和NULL进行比较


语法:​​select 列名 from 表名 where 条件​​ 查找语文成绩为空的同学信息:
MySQL表的增删改查基础操作_数据库_31


注意:这里 比较 NULL 是不能用 = 的, = 是无法比较的,结果是 假,如果要比较空 只能用 <=> 比较

或者 这样写 也可以

MySQL表的增删改查基础操作_java_32

✨10.分页查询


SQL中可以通过 ​​limit​​ 来实现分页查询
语法:​​select 列名 from 表名 limt 值(数字)​


注意:画红线的位置!!!

MySQL表的增删改查基础操作_java_33

✨修改操作


语法:​​update 表名 set 列名 = 值,列名 = 值 where 条件​​ 注意:这里的 ​​set​​ 是​​不能省略​​的,where 条件—指的是针对哪些进行修改,符合条件的就会修改,不符合条件的就不变,如果这里的 where 省略了,就是修改所有记录.
​update 是会修改数据库 服务器 上面原始数据的!​


举几个例子:


将孙悟空同学的数学成绩变更为 80分


MySQL表的增删改查基础操作_数据库_34


将曹孟德同学的数学成绩变为 60 分,语文成绩更变为 70分.


MySQL表的增删改查基础操作_mysql_35


​将总成绩倒数前三的 3 位同学的数学成绩加上 30分.​


MySQL表的增删改查基础操作_sql_36


将所有同学的语文成绩 更新为原来的 2倍


MySQL表的增删改查基础操作_表名_37

注意:这里 超出范围了,修改失败.

如果把每个同学的语文成绩都减少两倍 就可以成功,因为没有超出数据范围.

✨删除操作


sql 一般使用 delete 语句 进行删除
语法: ​​delete from 表名 where 条件;​


MySQL表的增删改查基础操作_sql_38



举报

相关推荐

0 条评论