Java教程

牛客网SQL试题库(中等)

本文主要是介绍牛客网SQL试题库(中等),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

SQL16 统计每个工种的员工平均工资

试题连接

select titles.title,AVG(salaries.salary)
from titles inner join salaries
on titles.emp_no = salaries.emp_no
group by titles.title
order by AVG(salaries.salary) asc

分析:

  • 使用内连接,连接两个表,成为新表
  • 再工种用分组,再计算每个组的 AVG(salary)

SQL19:查找员工的姓名以及部门名称

已知有三表:

  • 员工表(emp_no, emp_name)
  • 部门表(dept_no, dept_name)
  • 员工-部门表(emp_no, dept_no)

三表连接

select t1.last_name,t1.first_name,t3.dept_name
from employees as t1 left outer join dept_emp as t2
on t1.emp_no = t2.emp_no
left join departments as t3 
on t2.dept_no = t3.dept_no

SQL22:统计各部门的工资记录次数

三表查询
分组,计算每个部门的记录行数 count(1)

select t1.dept_no,t1.dept_name,count(1)
from departments as t1 left outer join dept_emp as t2
on t1.dept_no = t2.dept_no
left outer join salaries t3
on t2.emp_no = t3.emp_no
group by t1.dept_no
order by t1.dept_no asc

这篇关于牛客网SQL试题库(中等)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!