我有一个students表,有id,name,gender(性别)三个字段;其中有5个学生;
一、查询students表;
1、通过desc students命令查询表结构如下:
2、通过select * from students命令,结果如下;
二、group by
1、现在讲怎么使用分组(Group By column_name),大小写不区分;
group by 最好和函数一起使用,并且各个行之间最好要有共同点,或者相似性,或者重复的具体字段内容;例如,我的表中就有2女,3男;这样才好分组;不然没有多少实际意义;自己体会下;
我们按照性别分组:
select gender,count(gender) from students group by gender;
会发现,女孩有2个,男孩有3个;
2、如果我们要将gril或者boy按照字母顺序排列,就可以加一个
asc是ascending(升序)的意思;
desc是descending(逆序)的意思;
升序排列:
select gender,count(gender) from student group by gender order by gender asc;
降序排列:
select gender,count(gender) from student group by gender order by gender desc;
按字母顺序排列效果图:
我们发现,写了order by gender中的asc和不写asc效果是一样的,这是因为系统默认是顺序排列的;
按字母逆序排列
select gender,count(gender) from students group by gender order by gender desc;
3、注意:
group by 的顺序和order by的顺序有讲究,必须是先分组,再排序,类似先根据专业分组,然后再按这个专业排成绩,这样更具有可比性;如果各个专业的成绩掺杂在一起,比较起来,没有多大的意义;
否则: