第1关:按条件查询单表的所有字段
打开province数据库
第一题
查询街道信息(jdxx)数据表的开福区(qxmc)的所有字段
第二题
查询街道信息(jdxx)数据表的开福区和岳麓区(qxmc)的所有字段
第三题
查询街道信息(jdxx)数据表的长沙市(cs)的西湖街道(name)所有字段
jdxx数据表有四个字段,分别是省份(sf)、城市(cs)、区县(qxmc)、街道(name)。
use province;
#代码开始
#第一题
select * from jdxx where qxmc='开福区';
#第二题
select * from jdxx where qxmc='开福区' or qxmc='岳麓区';
#第三题
select * from jdxx where cs='长沙市' and name='西湖街道';
#代码结束
第2关:查询唯一值
本关任务:
根据jdxx数据表,查询湖南省(sf)所有的区县名称(qxmc),每个区县只出现一次
查询长沙市(cs)所有的区县名称(qxmc),每个区县只出现一次
use province
#代码开始
select distinct qxmc
from jdxx
where sf='湖南省';
select distinct qxmc
from jdxx
where cs='长沙市';
#代码结束
第3关:统计查询
本关任务:对jdxx统计查询
查询湖南省的街道个数
查询长沙市的街道个数
查询湖南省的区县个数
查询长沙市的区县个数
use province;
#代码开始
#答案1
select count(*) as 'count(name)'
from jdxx
where sf='湖南省';
#答案2
select count(*) as 'count(name)'
from jdxx
where cs='长沙市';
#答案3
select count(distinct qxmc) as 'count(distinct qxmc)'
from jdxx
where sf='湖南省';
select count(distinct qxmc) as 'count(distinct qxmc)'
from jdxx
where cs='长沙市';
#代码结束
第4关:分组查询
本关任务:统计每个省的名称和街道数目
显示街道数目大于200个的城市和街道数目
显示长沙市每个区县的街道数目
use province;
#代码开始
#题目1
select sf, count(*) as 'count(*)'
from jdxx
group by sf;
#题目2
select cs, count(*) as 'count(*)'
from jdxx
group by cs
having count(*)>200;
#题目3
select qxmc, count(*) as 'count(*)'
from jdxx
where cs='长沙市'
group by qxmc;
#题目4
#代码结束
第5关:数据排序
本关任务:显示jdtj数据表中街道个数最多的10个的所有字段;
显示jdtj数据表中街道个数最少的10个的所有字段;
按街道个数从高到底,街道个数相同的按省份升序排序显示jdtj数据表中街道个数大于35的所有字段
jdtj数据表字段为省份(sf)、城市(cs)、区县(qx) 、街道个数(jdgs)字段
use province;
#代码开始
#第一题
select *
from jdtj
order by jdgs desc
limit 10;
#第二题
select *
from jdtj
order by jdgs asc
limit 10;
#第三题
select *
from jdtj
where jdgs >35
order by jdgs desc,sf ASC;
#代码结束