目录
准备工作
1)准备一张表
CREATE table role( roleid INT PRIMARY KEY AUTO_INCREMENT, rolename VARCHAR(200), roleskill VARCHAR(300), rolesex CHAR(1), rolemonkey int, roleinfo VARCHAR(200), rolehealth INT );
这个SQL语句创建了一个名为"role"的表,其中包含了以下字段:
1. roleid: INTEGER类型,作为该表的主键,并且设置为自动增长,用于唯一标识每个角色。
2. rolename: VARCHAR(200)类型,用于存储角色的名称,最大长度为200个字符。
3. roleskill: VARCHAR(300)类型,用于存储角色的技能,最大长度为300个字符。
4. rolesex: CHAR(1)类型,用于表示角色的性别,只能存储一个字符。
5. rolemonkey: INTEGER类型,用于存储角色的猴币数量。
6. roleinfo: VARCHAR(200)类型,用于存储角色的信息,最大长度为200个字符。
7. rolehealth: INTEGER类型,用于存储角色的健康值。
。
2)插入数据
INSERT into role VALUES (null, '小玖', '暗影', '女', 500000, '猎手', 50000), (null, '暗色', 'coc', '男', 60000, '骑士', 50000), (null, '黎明', '曙光', '女', 70000, '战士', 50000), (null, '雪夜', '银色', '男', 30000, '猎人', 50000), (null, '张久', '酒心', '女', 50000, '肉盾', 50000), (null, '雪色', '雪风', '男', 50000, '女魔', 50000), (null, '安久', '蛋定', '女', 50000, '魔法士', 50000);
分组
select 分组字段(或者聚合函数) from 表名 Group By 分组字段 Having 条件
1)通过性别去统计各组的平局工资
select rolesex, AVG(rolemonkey) from role GROUP BY rolesex;
select rolesex, AVG(rolemonkey) from role GROUP BY rolesex;
Having是对分组后的结果进行过滤的。(可写过滤的函数)
Where是对分组前的结果进行过滤的(不可写过滤的函数)
2.limit关键字
limit关键字的作用是限制返回结果的行数。
不使用limit的关键字
SELECT * from role;
SELECT * from role;
使用limit的关键字
获取前三条数据
SELECT * from role limit 3;
SELECT * from role limit 3;
使用limit关键字获取从指定行开始获取
获取从第四条开始的数据开始,获取三条数据。
SELECT * from role limit 3,3;