色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

mysql員工部門薪資表

錢良釵1年前6瀏覽0評論

MySQL是目前最為流行的關系型數據庫管理系統之一,廣泛應用于各種網絡應用和Web開發中。在實際的數據管理工作中,我們需要用到MySQL的一些高級功能,例如員工部門薪資表。

員工部門薪資表是一種常用的數據庫結構,用于存儲員工的基本信息、所屬部門和薪資等數據。它的數據庫模式如下:

CREATE TABLE employees (
emp_no      INT             NOT NULL,
birth_date  DATE            NOT NULL,
first_name  VARCHAR(14)     NOT NULL,
last_name   VARCHAR(16)     NOT NULL,
gender      ENUM('M','F')   NOT NULL,
hire_date   DATE            NOT NULL,
PRIMARY KEY (emp_no)
);
CREATE TABLE dept_emp (
emp_no      INT             NOT NULL,
dept_no     CHAR(4)         NOT NULL,
from_date   DATE            NOT NULL,
to_date     DATE            NOT NULL,
PRIMARY KEY (emp_no,dept_no)
);
CREATE TABLE departments (
dept_no     CHAR(4)         NOT NULL,
dept_name   VARCHAR(40)     NOT NULL,
PRIMARY KEY (dept_no),
UNIQUE  KEY (dept_name)
);
CREATE TABLE salaries (
emp_no      INT             NOT NULL,
salary      INT             NOT NULL,
from_date   DATE            NOT NULL,
to_date     DATE            NOT NULL,
PRIMARY KEY (emp_no,from_date),
FOREIGN KEY (emp_no)  REFERENCES employees (emp_no)  ON DELETE CASCADE,
CHECK (salary >= 0)
);

該數據庫模式使用了四個表,分別存儲了員工信息、員工所屬部門、部門信息和員工薪資等數據。其中,employees表存儲了所有員工的基本信息,dept_emp表存儲了員工所屬的部門信息,departments表存儲了所有部門的信息,salaries表存儲了員工的薪資信息。

為了實現員工部門薪資表的查詢功能,我們可以使用MySQL的內連接和聚合函數等高級功能。下面是一個示例SQL查詢語句:

SELECT 
departments.dept_name,
COUNT(DISTINCT employees.emp_no) AS total_employee,
ROUND(AVG(salaries.salary),2) AS avg_salary
FROM 
employees
INNER JOIN dept_emp ON employees.emp_no = dept_emp.emp_no
INNER JOIN salaries ON employees.emp_no = salaries.emp_no
INNER JOIN departments ON dept_emp.dept_no = departments.dept_no
WHERE 
salaries.to_date = '9999-01-01'
GROUP BY 
departments.dept_name
ORDER BY 
avg_salary DESC;

該查詢語句使用了INNER JOIN操作將四個表連接起來,并使用了COUNT和AVG聚合函數計算了每個部門的員工總數和平均薪資。同時,使用了WHERE子句篩選出了所有在職員工的薪資信息,并使用GROUP BY子句對每個部門的數據進行分組。最后,使用ORDER BY子句將查詢結果按照平均薪資降序排列。

總之,員工部門薪資表是一個非常實用的數據庫結構,可以幫助我們有效地管理員工信息和薪資等數據。同時,MySQL的高級查詢功能也為員工部門薪資表的查詢和分析提供了強有力的支持。