书写顺序
select *
from 表名
where 条件
group by 字段
having 条件
order by
limit x,y
------
select cid,sum(score) from stu
where sid >= 1002
group by cid
having sum(score) > 100
order by sum(score) desc
limit 1
执行顺序
SELECT
DISTINCT <select_list>
from 获得全部数据
<join_type> JOIN <right_table>
ON <join_condition>
where 过滤一部分数据
group by 分组
having 过滤分组后的数据
select 查询展现数据,这里 有聚合的话在 此时聚合
order 排序
limit 限制
图示

// 向现有表中添加列 alter table stu add sex char(1); // 删除表中的列 alter table stu drop sex; // 修改列名和类型 alter table stu change sex gender int; // 修改列的存储类型 alter table stu change gender gender char(1); // 修改表名 alter table stu rename student; // 删除学生表 drop table student; insert into 表名 (字段1,字段2,...) values (值1,值2,...); delete from 表名 where 字段 = 值; -- 只删除符合条件的数据 update 表名 set 字段 = 值 [, 字段2 = 值2, ... ] [where 字段 = 值]; -- 删除全部[慎用] delete from stu; -- 删除全表 truncate table stu; |
*******分页查询********
-- 分页中有些已知条件
-- 当前页 pageNo = 1
-- 每页数据量pageSize = 3
-- 数据总量 total = count(sid)
-- 页数
pageCount = total % pageSize == 0 ? total / pageSize : (total / pageSize) + 1
-- 第一页
select * from stu limit 0,3;
-- 第二页
select * from stu limit 3,3;
-- 第三页
select * from stu limit 6,3;
-- 第pageNo页
select * from stu limit (pageNo - 1)*pageSize,pageSize;