sql中单表查询

use test;

# 查询大气质量表中的全部内容。
select * from `all`;

# 查询北京的大气质量数据。
select * from `all`
where `城市名` = '北京';

# 查询不同月份pm2.5的最大值。
select `月份`, max(`pm2.5`) from `all`
group by `月份`;

# 降序查询不同城市pm10的平均值。
select `城市名` , avg(`pm10`) from `all`
group by `城市名`
order by avg(`pm10`) desc;

#对大气质量表进行有选择查询。(pm25>50的作为数据源,按照不同月份城市名不是北京的进行分组,从分组数据中心抽取城市名和城市名对应的平均值为pm2.5和平均值为pm10进行展现,以pm2.5的平均值降序展现。
#where和having都是来设定筛选查询条件的,不同在于(where是在分组前进行的对整个数据源的限定;having是针对group by条件限定的,是分组选择条件,是对group by分组字段来进行约束的)
#where, groupby, having是有先后顺序限定的。
select `城市名`, avg(`pm2.5`),avg(`pm10`) from `all`
where `PM2.5` > '50'
group by `城市名`,`月份` having `城市名` <> '北京'
order by avg(`PM2.5`) desc;

#代码语句中的字段名必须来自数据源,(all,城市名,月份等都是来自于Navicat for my sql导入all的数据表中,引用字段名必须加上(``)符号。

posted @ 2022-06-03 16:59  坤仔很菜  阅读(52)  评论(0)    收藏  举报