0
点赞
收藏
分享

微信扫一扫

mysql学习总结四:数据操作

千妈小语 2022-02-26 阅读 76

数据操作主要有CRUD四个 :
Create(新增数据), Retrieve(查询数据),Update(修改数据),Delete(删除数据)
注释:在SQL中可以使用“–空格+描述”来表示注释说明

一、添加:Insert

在这里插入图片描述

1.全列添加:给这张表的所有字段添加内容。
单行插入:
在这里插入图片描述
注意:添加时,如果不指定列,那么插入值的顺序一定要和建表的(字段)列的顺序保持一致!!
多行插入:
在这里插入图片描述
2.指定列插入:必须指定列
在这里插入图片描述
在这里插入图片描述
注意:插入值的顺序必须要和指定列的顺序保持一致!!!

二、查询:Select

扩展:表和表数据的存储⽬录
使⽤以下 SQL 可以查询 MySQL 数据存储的位置:在这里插入图片描述
show variables like ‘%data%’; 查询的结果都是系统变量名。然后运用select @@系统变量名;就可以进行查询
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
1.全列查询
开发环境使用较多(因为开发环境的数据一般不大)但在生产环境一定要慎用!!!
select * from 表名;
在这里插入图片描述
注:通常情况下不建议使用 * 进行全列查询
在这里插入图片描述
– 1. 查询的列越多,意味着需要传输的数据量越大,就会消耗大量的带宽信息,并且传输的速度会很慢。
– 2. 可能会影响到索引的使用。(索引相当于目录)
2.指定列查询
指定列的顺序不需要按定义表的顺序来
在这里插入图片描述
3.表达式查询
给所有人的数学加10分
在这里插入图片描述
查询每个人的总分(因为在海南懋行,英语成绩为null,所以导致+ -* /运算会失效,所以总分输出也为null)
在这里插入图片描述
注意:SQL表达式的查询,不会修改表的原始数据!!!
4.别名查询
为查询结果中的列指定别名,表示返回的结果集中,以别名作为该列的名称,语法:
在这里插入图片描述
在这里插入图片描述
注意:别名查询不会对表的原始数据造成任何影响!!
5.去重:distinct
在这里插入图片描述
注意:①distinct可以使用多个字段联合去重,但是去重的规则是:所有联合字段必须都相同才会去重。否则不会去重!
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
②distinct 只能放在查询的最前⾯!否则会报错。
错误用法:
在这里插入图片描述
6.排序:order by
语法:在这里插入图片描述
依赖单列顺序排序时,如果有主键,当数值相同时,则按照自然的插入顺序排。(当前这个表中没有设置主键,稳妥起见,可以将查询语句写成 order by math desc,id;)
在这里插入图片描述
注意:如果不指定asc/desc排序规则,那么默认使用的就是asc升序排序。
在这里插入图片描述
查看姓名,总分,使用总分降序排序:
在这里插入图片描述
注:①order by可以使用别名进行排序。
②NULL 数据排序,视为比任何值都小,升序出现在最上面,降序出现在最下面(null在排序的时候时最小优先级)
在这里插入图片描述
7.多列排序
组合排序优先级:先根据最左边排序,如果左边数据相同的情况再根据右边的字段进⾏排序。
在这里插入图片描述
在这里插入图片描述
若列1,列2的值同时相同,则按照插入的顺序排序。(先插入的狗楠列,后插入的牛牛列)
在这里插入图片描述
8.条件查询:where
①比较运算符
在这里插入图片描述
在这里插入图片描述
②逻辑运算符
在这里插入图片描述
8.1 and
在这里插入图片描述
8.2 or
在这里插入图片描述

注意: a. WHERE条件可以使⽤表达式,但不能使⽤别名。
在这里插入图片描述
b.AND的优先级⾼于OR,在同时使⽤时,需要使⽤⼩括号()包裹优先执⾏的部分。
在这里插入图片描述
常见面试题: 为什么别名不能使用在where中,但可以使用在order by中?
在这里插入图片描述
在这里插入图片描述
由上图可知:别名是在第五查询阶段产生的,而where语句处于第二阶段,所以where语句不能使用别名查询。order by语句处于第六阶段,在别名产生之后,所以可以使用别名查询。也就是说别名只能是在步骤五之后的查询才能被使用。
8.3 null
在这里插入图片描述
8.4使用列查询
在这里插入图片描述
8.5查询总成绩大于250分的人
方法一:
在这里插入图片描述
方法二:借助虚拟表
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
注意:在这里插入图片描述
8.6 between a and b (包含 a ,b 的值)
在这里插入图片描述
8.7 in
查询英语成绩是 60或者45或者110的人
在这里插入图片描述
9.模糊查询:like

  • %:匹配任意字符
  • _:匹配⼀个字符
    在这里插入图片描述
    **注意:**1、%和_可以使用在查询的任何位置。
    2、 MySQL 所有查询应考虑最左原则,将能过滤最多条数的条件放到最左边。
    在这里插入图片描述
    10.分页查询:limit
    即查询某一个页面上的部分信息(截取了部分信息)
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    注意:限制查询最多20条时,数据不够20条,但查询不会报错,而是显示所有数据信息。
    在这里插入图片描述
    limit 2 offset 2:意思是跳过两条数据(offset 2),查询两条数据
    limit 3,2:跳过三条,查询两条
    在这里插入图片描述

三、修改数据:Update

在这里插入图片描述
1.全部修改
在这里插入图片描述
注意:这种做法会使表格的原始数据全部改动,谨慎使用。
2.部分修改
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.修改多列
在这里插入图片描述
4.部分数据多列修改
在这里插入图片描述
5.表达式修改
给总分倒数后三名的同学数学成绩加10
在这里插入图片描述

四、删除:Delete

在这里插入图片描述
1.删除单条
在这里插入图片描述
2.全部删除
在这里插入图片描述
3.清空表
在这里插入图片描述
总结:
在这里插入图片描述
delete和drop的区别:
在这里插入图片描述

举报

相关推荐

0 条评论