标签:条件 and employees sel man join code -- 题目
练习题链接:https://www.nowcoder.com/ta/sql?page=0
1,查找最晚入职员工的所有信息
SELECT * FROM employees ORDER BY hire_date DESC LIMIT 0,1;
2,查找入职员工时间排名倒数第三的员工所有信息
SELECT * FROM employees ORDER BY hire_date DESC LIMIT 2,1;
3,查找当前薪水详情以及部门编号dept_no
查找各个部门当前(to_date=‘9999-01-01‘)领导当前薪水详情以及其对应部门编号dept_no
错误尝试第二次【原因:①表的先后出错;②to_date两次限定条件】
SELECT d.emp_no,s.salary,s.from_date,s.to_date,d.dept_no FROM dept_manager AS d INNER JOIN salaries AS s ON d.emp_no=s.emp_no WHERE d.to_date=‘9999-01-01‘;
正确语句:
SELECT s.*,d.dept_no FROM salaries AS s INNER JOIN dept_manager AS d ON d.emp_no=s.emp_no WHERE d.to_date=‘9999-01-01‘ AND s.to_date=‘9999-01-01‘;
关于为什么一定要两个表格的时间都限制成规定时间(9999-01-01)呢?
4,查找所有已经分配部门的员工的last_name和first_name
错误尝试第二次【原因查找到:,的中文标点导致的】
SELECT e.last_name,e.first_name,d.dept_no FROM dept_emp AS d INNER JOIN employees AS e ON e.emp_no=d.emp_no;
正确的语句:
SELECT e.last_name,e.first_name,d.dept_no FROM dept_emp AS d INNER JOIN employees AS e ON e.emp_no=d.emp_no;
5,查找所有员工的last_name和first_name以及对应部门编号dept_no【LEFT ,RIGHT ,INNER JOIN】
SELECT e.last_name,e.first_name,d.dept_no FROM employees AS e LEFT JOIN dept_emp AS d ON e.emp_no=d.emp_no;
标签:条件 and employees sel man join code -- 题目
原文地址:https://www.cnblogs.com/Mufasa/p/11478958.html