牛客网之SQL---持续更新
生活随笔
收集整理的這篇文章主要介紹了
牛客网之SQL---持续更新
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
- SQL1 查找最晚入職員工的所有信息
- SQL2 查找入職員工時(shí)間排名倒數(shù)第三的員工所有信息
- SQL3 查找當(dāng)前薪水詳情以及部門編號(hào)dept_no
- SQL4 查找所有已經(jīng)分配部門的員工的last_name和first_name以及dept_no
- SQL5 查找所有員工的last_name和first_name以及對(duì)應(yīng)部門編號(hào)dept_no
- SQL7 查找薪水記錄超過(guò)15次的員工號(hào)emp_no以及其對(duì)應(yīng)的記錄次數(shù)t
- SQL8 找出所有員工當(dāng)前薪水salary情況
- SQL10 獲取所有非manager的員工emp_no
- SQL11 獲取所有員工當(dāng)前的manager
- SQL12 獲取每個(gè)部門中當(dāng)前員工薪水最高的相關(guān)信息
- SQL15 查找employees表emp_no與last_name的員工信息
- SQL16 統(tǒng)計(jì)出當(dāng)前各個(gè)title類型對(duì)應(yīng)的員工當(dāng)前薪水對(duì)應(yīng)的平均工資
- SQL17 獲取當(dāng)前薪水第二多的員工的emp_no以及其對(duì)應(yīng)的薪水salary
- SQL18 獲取當(dāng)前薪水第二多的員工的emp_no以及其對(duì)應(yīng)的薪水salary
- SQL19 查找所有員工的last_name和first_name以及對(duì)應(yīng)的dept_name
SQL1 查找最晚入職員工的所有信息
select * from employees order by hire_date desc limit 1;SQL2 查找入職員工時(shí)間排名倒數(shù)第三的員工所有信息
select *from employees order by hire_date desc limit 2,1;SQL3 查找當(dāng)前薪水詳情以及部門編號(hào)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 查找所有已經(jīng)分配部門的員工的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以及對(duì)應(yīng)部門編號(hào)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 查找薪水記錄超過(guò)15次的員工號(hào)emp_no以及其對(duì)應(yīng)的記錄次數(shù)t
select emp_no, count(emp_no) as t from salaries group by emp_no having t >15SQL8 找出所有員工當(dāng)前薪水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 獲取所有員工當(dāng)前的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 獲取每個(gè)部門中當(dāng)前員工薪水最高的相關(guān)信息
# 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 -- 以上是錯(cuò)誤示例,正解如下/* * 這里做了一個(gè)新的表,是部門編號(hào)及最高工資(還是有點(diǎn)迷糊) * 然后用新表把另外兩個(gè)表聯(lián)結(jié)起來(lái) */ 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 統(tǒng)計(jì)出當(dāng)前各個(gè)title類型對(duì)應(yīng)的員工當(dāng)前薪水對(duì)應(yīng)的平均工資
select t.title, avg(s.salary) from titles t, salaries s where t.emp_no = s.emp_no group by t.titleSQL17 獲取當(dāng)前薪水第二多的員工的emp_no以及其對(duì)應(yīng)的薪水salary
select emp_no, salary from salaries ORDER by salary desc LIMIT 1,1SQL18 獲取當(dāng)前薪水第二多的員工的emp_no以及其對(duì)應(yīng)的薪水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以及對(duì)應(yīng)的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總結(jié)
以上是生活随笔為你收集整理的牛客网之SQL---持续更新的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: swagger2 description
- 下一篇: oracle数据库description