2.10模糊查询( like )% 表示0个到n个字符
where 列名 like '%巴'; -- 表示以 巴 结尾的; where 列名 like '巴%'; -- 表示以 巴 开头的; where 列名 like '%巴巴%' -- 表示数据里面包含 巴巴 的;
查询名字以 巴 结尾的学生;
SELECT * FROM students WHERE `name` LIKE '%巴';
查询名字以 作者 开头的学生;
SELECT * FROM students WHERE `name` LIKE '作者%';
查询名字里面包含 嘻哈 的学生;
SELECT * FROM students WHERE `name` LIKE '%嘻哈%';
_ 表示一个字符,可以多次使用
查询名字里面倒数第二个字有 哈 的学生
where 列名 like ‘哈_';
SELECT * FROM students WHERE `name` LIKE '%哈_';
2.11结果排序
对结果经行排序(对查询出的结果按照一列或多列进行升序或者倒序排序,升序式ASC,倒序式 DESC,默认升序)。
注意不能使用中文或者中问别名排序。
where 条件 order by 列名 [ ASC / DESC ];
查询一年级,二年级,三年级学生数据,以 语文成绩排序,降序。
SELECT * FROM students WHERE grade IN ('一年级','二年级','三年级') ORDER BY chinese DESC;
2.12分页查询
分页查询( beginIndex 表示从第几条数据开始(也可以说是跳过前面多少页),第一页从0开始。pageSize 表示每页显示多少条数据);
select * from 表名 where 条件 limit beginIndex , pageSize;
分页算法公式 (当前页 - 1)* pageSize;
比如说每页 10页 分页。
第一页 limit 0,10;// 显示 0-10;跳过前面0条数据
第二页 limit 10,10;// 显示 11-20;跳过前面10条数据
第三页 limit 20,10;// 显示 21-30;跳过前面20条数据
查询全部学生,每页三条数据
第一页
SELECT * FROM students LIMIT 0,3;
第二页
SELECT * FROM students LIMIT 3,3;
第三页
SELECT * FROM students LIMIT 6,3;
2.13聚合函数
作用于一组数据,对那组返回一个值
- count :统计结果记录多少条数,
- max:统计最大值
- min:统计最小值sum:计算求和
- avg: 计算平均值
注意,分组函数 group by。如果要对 分组后 的数据进行筛选,那么必须使用 having 关键字,条件写在 having 后面;
- where:先过滤已有的数据,在分组,在聚合函数计算;
- having:过滤分组之后的数据。
插入我们需要练习的表city 表
CREATE TABLE `city` ( `id` INT AUTO_INCREMENT PRIMARY KEY COMMENT '主键', `city_name` VARCHAR(100) COMMENT '城市名', `city_year` VARCHAR(4) COMMENT '年份,yyyy', `city_gdp` DOUBLE COMMENT '当前年份,城市一整年的GDP,单位亿元', `city_population` DOUBLE COMMENT '当前年丰,城市的总人口,单位万人' );
添加数据
INSERT INTO city VALUES(1,'上海',2018,32679,2418); INSERT INTO city VALUES(2,'北京',2018,30320,2171); INSERT INTO city VALUES(3,'深圳',2018,24691,1253); INSERT INTO city VALUES(4,'广州',2018,23000,1450); INSERT INTO city VALUES(5,'重庆',2018,20363,3372); INSERT INTO city VALUES(6,'上海',2019,38155,2424); INSERT INTO city VALUES(7,'北京',2019,35371,2171); INSERT INTO city VALUES(8,'深圳',2019,26927,1302); INSERT INTO city VALUES(9,'广州',2019,23628,1491); INSERT INTO city VALUES(10,'重庆',2019,23605,3372);
COUNT
查询计算2019年一共有多少个城市录入数据(答案 5个)
SELECT COUNT(*) FROM city WHERE city_year = '2019';
MAX
查询 2018年里 GDP 最高是多少;
SELECT MAX(city_gdp) FROM city WHERE city_year = '2018';
MIN
查询 2018年里 GDP 最低是多少;
SELECT MIN(city_gdp) FROM city WHERE city_year = '2018';
SUM
查询2019年里所有城市 GDP 总和;
SELECT SUM(city_gdp) FROM city WHERE city_year = '2019';
AVG
查询2019年所有城市 GDP 平均值;
SELECT AVG(city_gdp) FROM city WHERE city_year = '2019';
3.增加
insert into 表名(字段1,字段2,字段3,…)values(值1,值2,值3,…);
添加学生鸡鸡鸡鸡
INSERT INTO students(id,NAME,grade,chinese,math,english) VALUES( 9,'鸡鸡鸡鸡','七年级',77,77,77);
其它插入方式
INSERT INTO 表名(字段1,字段2,字段3) VALUES (值1,值2,值3),(值1,值2,值3); -- 插入多条数据 INSERT INTO 表名 VALUES(值1,值2); -- 针对表全字段进行插入操作 INSERT INTO 表名(字段) SELECT 字段 FROM 表2; -- 查询结果插入 INSERT INTO 表名 SELECT 字段 FROM 表2; -- 查询结果,全表插入
4.更新
update 表名 set 字段=值 where 条件; -- 带条件的去修改指定数据,否则修改全表;
修改学生 ‘哈哈哈哈' 的英语成绩为 10;
UPDATE students SET english = 10 WHERE `name` = '哈哈哈哈';
5.删除
delete from 表名 where 条件; -- 删除数据带条件删除,否则删除全表的数据
删除学生 ‘鸡鸡鸡鸡' ;
DELETE FROM students WHERE `name` = '鸡鸡鸡鸡';
6.语句执行顺序
from -> on -> join -> where -> group by -> having -> select -> distinct -> order by -> limit
MySQL其它文章,请看下面链接
MySQL DDL 语句
MySQL CRUD 语句
MySQL 聚合函数
MySQL 多表查询
END…
到此这篇关于MySQL 详细单表增删改查crud语句的文章就介绍到这了,更多相关MySQL 增删改查语句内容请搜索
更多相关Mysql内容来自木庄网络博客
标签:Mysql
相关阅读 >>
更多相关阅读请进入《mysql》频道 >>

数据库系统概念 第6版
本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。