牛客网之SQL---持续更新
生活随笔
收集整理的這篇文章主要介紹了
牛客网之SQL---持续更新
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
- SQL1 查找最晚入職員工的所有信息
- SQL2 查找入職員工時間排名倒數第三的員工所有信息
- SQL3 查找當前薪水詳情以及部門編號dept_no
- SQL4 查找所有已經分配部門的員工的last_name和first_name以及dept_no
- SQL5 查找所有員工的last_name和first_name以及對應部門編號dept_no
- SQL7 查找薪水記錄超過15次的員工號emp_no以及其對應的記錄次數t
- SQL8 找出所有員工當前薪水salary情況
- SQL10 獲取所有非manager的員工emp_no
- SQL11 獲取所有員工當前的manager
- SQL12 獲取每個部門中當前員工薪水最高的相關信息
- SQL15 查找employees表emp_no與last_name的員工信息
- SQL16 統計出當前各個title類型對應的員工當前薪水對應的平均工資
- SQL17 獲取當前薪水第二多的員工的emp_no以及其對應的薪水salary
- SQL18 獲取當前薪水第二多的員工的emp_no以及其對應的薪水salary
- SQL19 查找所有員工的last_name和first_name以及對應的dept_name
SQL1 查找最晚入職員工的所有信息
select * from employees order by hire_date desc limit 1;SQL2 查找入職員工時間排名倒數第三的員工所有信息
select *from employees order by hire_date desc limit 2,1;SQL3 查找當前薪水詳情以及部門編號dept_no
select s.*,d.dept_no from salaries s, dept_manager d where s.emp_no = d.emp_no order by s.emp_noSQL4 查找所有已經分配部門的員工的last_name和first_name以及dept_no
select last_name, first_name, dept_no from employees, dept_emp where employees.emp_no = dept_emp.emp_no;SQL5 查找所有員工的last_name和first_name以及對應部門編號dept_no
select e.last_name, e.first_name, d.dept_no from employees e left join dept_emp d on e.emp_no = d.emp_noSQL7 查找薪水記錄超過15次的員工號emp_no以及其對應的記錄次數t
select emp_no, count(emp_no) as t from salaries group by emp_no having t >15SQL8 找出所有員工當前薪水salary情況
select distinct salary from salaries order by salary descSQL10 獲取所有非manager的員工emp_no
select emp_no from employees where emp_no not in ( select emp_no from dept_manager)SQL11 獲取所有員工當前的manager
select e.emp_no, d.emp_no asmanager from dept_emp e, dept_manager d where (e.dept_no = d.dept_no ande.emp_no <> d.emp_no)SQL12 獲取每個部門中當前員工薪水最高的相關信息
# SELECT e.dept_no, e.emp_no, max(s.salary) as maxSalary # from dept_emp e, salaries s # where e.emp_no = s.emp_no # group by e.dept_no # order by e.dept_no -- 以上是錯誤示例,正解如下/* * 這里做了一個新的表,是部門編號及最高工資(還是有點迷糊) * 然后用新表把另外兩個表聯結起來 */ select r.dept_no,ss.emp_no,r.maxSalary from (select d.dept_no,max(s.salary)as maxSalary from dept_emp d,salaries swhere d.emp_no=s.emp_nogroup by d.dept_no )as r,salaries ss,dept_emp dd where r.maxSalary=ss.salaryand r.dept_no=dd.dept_noand dd.emp_no=ss.emp_no order by r.dept_noSQL15 查找employees表emp_no與last_name的員工信息
select * from employees where (emp_no%2<>0) and last_name!='Mary' order by hire_date descSQL16 統計出當前各個title類型對應的員工當前薪水對應的平均工資
select t.title, avg(s.salary) from titles t, salaries s where t.emp_no = s.emp_no group by t.titleSQL17 獲取當前薪水第二多的員工的emp_no以及其對應的薪水salary
select emp_no, salary from salaries ORDER by salary desc LIMIT 1,1SQL18 獲取當前薪水第二多的員工的emp_no以及其對應的薪水salary
select s.emp_no, s.salary, e.last_name, e.first_name from salaries s join employees e on s.emp_no = e.emp_no where s.salary = (select max(salary) from salarieswhere salary < (select max(salary)from salaries) )SQL19 查找所有員工的last_name和first_name以及對應的dept_name
select e.last_name, e.first_name, d.dept_name from (employees as e left join dept_emp as ddon e.emp_no = dd.emp_no)left join departments as don dd.dept_no = d.dept_no總結
以上是生活随笔為你收集整理的牛客网之SQL---持续更新的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: swagger2 description
- 下一篇: MinIO关闭公开桶的列表展示