数据库语句中不区分大小写

新增数据
全列插入:
insert into [表名] value()

指定列插入:


插入多组数据

查询数据
所有的select操作都不会对原来的表造成任何改变。
查找
1、全列查找
仅限于在测试环境查找,不能在生产环境上使用
生产环境的服务器压力大,数据库数据量非常多,一旦执行select*操作,可能给生产环境的服务器造成很大的负担,甚至导致服务器卡死或者死机。
1. 查询的列越多,意味着需要传输的数据量越大;
2. 可能会影响到索引的使用。
命令:
select * from [表名];


指定列查找
命令
select[列名]from[表名]

查找所有姓名和总成绩
列求和:同一行的若干列求和

查找所有名字和语文加10
mysql> select 名字,语文 + 10 from exam_result;

查询字段指定别名
select 名字,语文 + 数学 + 英语 as 总成绩 from exam_result;

去重

指定列去重
select distinct 列名 from 表名;

多列去重
select distinct 列名 from 表名;

排序
升序
select * from exam_result order by 语文 asc; asc也可以省略

降序
select * from exam_result order by 语文 desc;

按总成绩降序

按照总成绩排序,使用别名

按照多个列排序
如果数据为null排序默认为第一个
先按照语文降序、再数学降序排序、最后按英语降序排序

条件查询(常用)
条件查询中涉及的运算符

如果表达式 null = null =>null 相当于条件不成立;
如果表达式 null <=>null =>true 相当于条件成立

查找语文为null的数据

上述为错误写法,null=null结果为false
null参与运算 值都是null


查找数学低于75的

查找总分低于200的数据


查询语文成绩>80并且英语成绩也>80

查询语文成绩>80或者英语成绩>80

and和or同时使用时,and的优先级更高一点
查询语文成绩在[80,100]之间


查询数学成绩是38.6或者68.6的


模糊匹配like操作要搭配通配符使用,针对字符匹配或者数字,但是查询效率比较低
%:匹配任意个任意字符
_:匹配一个任意字符
查找所有姓孙的成绩

下划线和数量匹配

查找所有同学姓孙并且语文成绩>60的同学


分页查找
避免查询卡死
查找同学信息中总分最高的前3名

=查找同学信息中总分最高的4名-6名==

如果limit后面的数字太大,超出的记录的数目,返回结果不会有错误。

如果offset过大,得到的结果可能是一个空的结果

修改数据
update[表名]set[列名]=[修改的值],[列名]=[修改的值]where 子句
孙悟空的数学成绩改为80


如果不加任何的where限定条件,此时就会把所有的数据进行修改

修改多列

所有同学语文成绩都-10

将总成绩倒数3名的人,数学成绩+10

删除数据
删除曹孟德同学的考试成绩
delete from exam_result where 名字 = ‘曹孟德’;

删除整表数据
delete from 表名;

再次查询为空

本文详细介绍MySQL数据库的基础操作,包括数据的增删改查、条件筛选、排序、分页及数据更新与删除等核心功能,适合初学者快速掌握并应用于实际项目。
7681

被折叠的 条评论
为什么被折叠?



