练习题:
1、找出就职年份最高的雇员(列出雇员名字+年份)
select name, MAX(years_employed) FROM Employees
#"MAX"等统计函数,可以直接在第一行代码启用#
2、按角色(Role)统计一下每个角色的平均就职年份
SELECT role,avg(years_employed) FROM employees
group by role
3、按办公室名字总计一下就职年份总和
SELECT building, sum(years_employed) FROM employees
group by building
#同时输出 “building”/“sum(years_employed)”,这样看起来更易懂。#
4、每栋办公室按人数排名,不要统计无办公室的雇员
SELECT building,count(building)FROM employees
where building is not null #先排除NULL#
group by building
5、就职1,3,5,7年的人分别占总人数的百分比率是多少(给出年份和比率"50%" 记为 50)
SELECT years_employed,count(*)*100/(SELECT count(*) FROM Employees) AS rating
FROM employees
WHERE years_employed in (1, 3, 5, 7)
group by years_employed
#总人数“(SELECT count(*) FROM Employees)”#
#a in (1, 3, 5, 7)#
1、统计一下Artist角色的雇员数量
SELECT role,count() FROM employees
where role = "Artist"
2、按角色统计一下每个角色的雇员数量
SELECT role,count(*) FROM employees
group by role
3、算出Engineer角色的就职年份总计
SELECT role, sum(years_employed) FROM employees
where role like "engineer"
group by role
4、按角色分组算出每个角色按有办公室和没办公室的统计人数(列出角色,数量,有无办公室,注意一个角色如果部分有办公室,部分没有需分开统计)
SELECT role,count(role),building is null FROM employees
group by role
#这个比较牛逼啊,得认真学习下#
5、按角色和就职年份统计人数,年份按0-3,3-6,6-9这种阶梯分组,最后按角色+阶梯分组排序
select role,years_employed,years_employed/3 as year_3,count(role)from employees
group by role,year_3 #可以以两个column分组#
#这个比较牛逼,得认真学习下#