目录
使用select语句可以将需要的数据从 mysql数据库中查询出来,如果对查询的结果进行排序,可以使用order by语句来对语句实现排序,并最终将排序后的结果返回给用户,这个语句的排序不光可以针对某一个字段,也可以针对多个字段。
语法
select 字段1,字段2....from 表名 order by 字段1,字段2.......[asc]
#查询结构以升序方式显示,asc可以省略
select 字段1.字段2....from 表名 order by 字段1,字段2........desc
#查询结构以降序的方式显示
- mysql> select id,nba,age from ky21 order by id asc;
- #查询id,nba,age。字段的记录,并且以id进行升序


- mysql> select id,nba,age from ky21 order by id desc;
-
- 查找id,nba,age字段,以id进行降序排序
- desc(降序)

- mysql> select id,nba,score,addres from ky21 where addres='洛杉矶' order by score desc;
-
- #查询,id,nab,score,address字段,再进行过滤出address=洛杉矶的字段,在进行score字段进行降序排序

order by 语句也可以使用多个字段来进行排序,当排序的第一个字段相同的记录有多条的情况下,这些多条的记录再安装第二个字段进行排序,order by后面跟多个字段时,字段直接使用英文逗号隔开,优先级是安装优先级顺序而定,但是order by 之后的第一个参数只有在出现相同值的时候,第二个字段才有意义。
mysql> select id,nba,score from ky21 order by score,id desc;
此处做的实验是先升序排序再降序排序,也可以都降序排序或者都升序排序,这里就不做过多的例子了

在大型数据库中,有事查询数据需要数据符合某些特点,“and”和“or” 表示“且”和“或”。
- mysql> select id,nba,age from ky21 where id>20;
- 查找id大于20的记录,并且只显示id,age,nba
-
-
- mysql> select id,nba,age from ky21 where id>10 and id<30;
- 查找id大于10的记录并且小于30的记录
-
-
- mysql> select id,nba,age from ky21 where id>1 or id<30;
- 查找id大于1 或者小于30的记录



- mysql> select id,nba,age from ky21 where id <10 or (id>1 or id<30);
- 查找id小于10或者大于1和小于30之间的
-
- mysql> select id,nba,age from ky21 where id <10 or (id>1 or id<30) order by id desc;
- 查找id小于10或者大于1和小于30之间的,并且以id进行降序排序
-


select distinct 字段 from 表名;
- distinct 必须放在最开头
- distinct 只能使用需要去重的字段进行操作
- distinct 去重多个字段时,含义是:几个字段同时重复时才能会过滤,会默认按左边第一个字段为依据。
- mysql> select distinct age from ky21;
- #使用distinct查询不重复记录,(相当于去重)

通过sql查询出来的结果,还可以对其进行分组,使用group by语句来实现,group by通常都是结合集合函数来一起实现的。
常用的聚合函数包括:计数(count)、求和(sum)、求平均数(avg)、最大值(max)、最小值(min),group by 分组的时候可以按一个或多个字段对结果进行分组处理。、
select 字段,聚合函数(字段) from 表名【where 字段 (匹配) 数值】group by 字段名;
- mysql> select count(age),score from ky21 group by score;
- #count(age): 记录age字段的数据出现的次数
- group by score; 按照score相同的分数进行分组,
-
-
- mysql> select count(age),score from ky21 where score<20 group by score;
-
- mysql> select count(age),score,addres