常用SQL查询语句练习

#1、求10号部门工资最高和最低的员工的工资
SELECT MAX(salary),MIN(salary)
FROM EMPLOYEES
WHERE department_id = 30;

#2、查询员工最早的入职时间和最晚入职时间
SELECT MIN(hire_date),MAX(hire_date)
FROM EMPLOYEES;

#3、查询20号部门的平均工资
SELECT AVG(salary)
FROM EMPLOYEES
WHERE department_id = 20;

#4、查询20号部门所有员工每个月的工资总和
SELECT SUM(salary)
FROM EMPLOYEES
WHERE department_id = 20;

#5、查询总人数
SELECT COUNT(employee_id)
FROM EMPLOYEES;

#6、查询有奖金的总人数
SELECT COUNT(employee_id)
FROM EMPLOYEES
WHERE commission_pct is not null;

#空值问题
#count(*)不忽略空值,其他情况忽略空值
SELECT COUNT(commission_pct)
FROM EMPLOYEES;

SELECT COUNT(*)
FROM EMPLOYEES;

#7、查询部门20的员工,每个月的工资总和及平均工资。
SELECT SUM(salary),AVG(salary)
FROM EMPLOYEES
WHERE department_id = 20;

#8 查询工作在Toronto的员工人数,最高工资及最低工资。
SELECT COUNT(e.employee_id),MAX(e.salary),MIN(e.salary)
FROM EMPLOYEES e,DEPARTMENTS d,LOCATIONS l
WHERE e.department_id = d.department_id and d.location_id = l.location_id and l.city = 'Toronto';

#9查询员工表中一共有几种岗位类型。
SELECT COUNT(DISTINCT job_id)
FROM EMPLOYEES;

#查询部门名称,部门编号,各部门平均工资,按照部门进行分组
SELECT e.department_id,d.department_name,AVG(e.salary)
FROM EMPLOYEES e,DEPARTMENTS d
WHERE e.department_id = d.department_id
GROUP BY e.department_id,d.department_name;

#having子句
#查询部门名称,部门编号,各部门平均工资,按照部门进行分组,并且平均工资大于2000
SELECT e.department_id,d.department_name,AVG(e.salary)
FROM EMPLOYEES e,DEPARTMENTS d
WHERE e.department_id = d.department_id
GROUP BY e.department_id,d.department_name
HAVING AVG(e.salary)>2000;


#书写顺序 select--from --where--group by--having-- order BY
#执行顺序: from--where-group by -having-select-order by

#按多列进行分组
#根据多列分组时,group by 子句中各列之间用逗号分隔

#查询每个部门每个岗位的工资总和
SELECT e.department_id 部门编号,j.job_title 岗位,SUM(e.salary)
FROM EMPLOYEES e,JOBS j
WHERE e.job_id = j.job_id
GROUP BY e.department_id,j.job_title;

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值