SQL语言查找最晚入职员工的详细信息,输出:员工编号、姓名(包括姓和名)、性别(显示男或女)、员工当前收入、员工当前职称、员工所在部门名称、该部门经理名字(不需要姓氏);
时间: 2023-05-28 21:05:24 浏览: 85
假设员工表为employees,部门表为departments,员工职称表为titles,员工薪资表为salaries,部门经理表为dept_manager,可以使用如下SQL语句查询最晚入职员工的详细信息:
SELECT e.emp_no AS '员工编号', CONCAT(e.first_name, ' ', e.last_name) AS '姓名',
CASE e.gender WHEN 'M' THEN '男' ELSE '女' END AS '性别', s.salary AS '当前收入',
t.title AS '当前职称', d.dept_name AS '部门名称',
CONCAT(m.first_name, ' ', m.last_name) AS '部门经理名字'
FROM employees e
JOIN salaries s ON e.emp_no = s.emp_no
JOIN titles t ON e.emp_no = t.emp_no
JOIN dept_emp de ON e.emp_no = de.emp_no
JOIN departments d ON de.dept_no = d.dept_no
JOIN dept_manager dm ON de.dept_no = dm.dept_no
JOIN employees m ON dm.emp_no = m.emp_no
WHERE e.hire_date = (SELECT MAX(hire_date) FROM employees)
相关问题
在员工表中查询入职最晚的员工的编号,姓名和入职日期
假设员工表的表名为employee,可以使用以下SQL查询语句来获取入职最晚的员工的编号、姓名和入职日期:
```
SELECT empno, ename, hiredate
FROM employee
WHERE hiredate = (SELECT MAX(hiredate) FROM employee);
```
这个查询语句中,内部的子查询 `SELECT MAX(hiredate) FROM employee` 会返回员工表中入职日期最晚的日期。然后外部的查询语句会根据这个日期来筛选出员工表中入职日期等于这个日期的员工记录,并返回这些员工的编号、姓名和入职日期。
请统计公司[2021,2022]年入职的男性和女性员工的数量(性别自行判断)
您可以使用以下 SQL 语句来统计公司[2021,2022]年入职的男性和女性员工的数量:
```
SELECT gender, COUNT(*) AS count
FROM employees
WHERE hire_date BETWEEN '2021-01-01' AND '2022-12-31'
GROUP BY gender;
```
该语句将从 "employees" 表中获取入职日期在 2021 年至 2022 年之间的员工信息,并按照性别分组统计数量。