淘先锋技术网

首页 1 2 3 4 5 6 7

Oracle HR表是Oracle数据库中的一个经典样例表,它模拟了一个公司的人力资源管理信息。

该表包含了员工的基本信息、工作岗位信息、薪资等详情。各个字段设计得十分详细,特别是社保类型的设计,方便广大HR人员快速的查询到员工的社保情况。

-- 创建HR表
CREATE TABLE HR.EMPLOYEES
(
EMPLOYEE_ID NUMBER(6),
FIRST_NAME VARCHAR2(20),
LAST_NAME VARCHAR2(25) NOT NULL,
EMAIL VARCHAR2(25) NOT NULL,
PHONE_NUMBER VARCHAR2(20),
HIRE_DATE DATE NOT NULL,
JOB_ID VARCHAR2(10) NOT NULL,
SALARY NUMBER(8,2),
COMMISSION_PCT NUMBER(2,2),
MANAGER_ID NUMBER(6),
DEPARTMENT_ID NUMBER(4)
);

以上是HR表的创建语句,接下来我们可以通过一些SQL操作来更好的理解该表在实际情况下的应用。

-- 查询该表中所有员工的信息
SELECT * FROM HR.EMPLOYEES;

上文中的SQL语句将我们获取到该表中所有员工的信息,返回值如下:

EMPLOYEE_ID FIRST_NAME           LAST_NAME            EMAIL                          PHONE_NUMBER         HIRE_DATE JOB_ID    SALARY COMMISSION_PCT MANAGER_ID DEPARTMENT_ID
----------------- -------------------- ------------------------- ------------------------------ ------------------- --------- ---------- ---------- ------------ ---------- -------------
100 Steven               King                  SKING                          515.123.4567         17-JUN-83.AD_PRES 24000                       90
101 Neena                Kochhar               NKOCHHAR                       515.123.4            21-SEP-89.AD_VP   1700      1200                  90
102 Lex                  De Haan               LDEHAAN                        515.123.4            13-JAN-93.AD_VP   1700      1200                  90
103 Alexander            Hunold                AHUNOLD                        590.423.4567         03-JAN-90.IT_PROG 9000                       60
104 Bruce                Ernst                 BERNST                         590.423.4568         21-MAY-91.IT_PROG 6000                       60
105 David                Austin                DAUSTIN                        590.423.4569         25-JUN-97.IT_PROG 4800                       60
(以下省略......)

以上为查询返回值的前几行,可以看到每一条员工信息被全部输出。

-- 查询员工的薪资、岗位信息
SELECT EMPLOYEES.LAST_NAME, EMPLOYEES.JOB_ID, JOBS.JOB_TITLE, EMPLOYEES.SALARY
FROM HR.EMPLOYEES, HR.JOBS
WHERE EMPLOYEES.JOB_ID = JOBS.JOB_ID
AND EMPLOYEES.SALARY >7000;

该语句可以很快的帮助我们查询到所有年薪超过7000的员工,其返回结果为:

LAST_NAME            JOB_ID    JOB_TITLE                                       SALARY
------------------------- ---------- --------------------------------------- ----------
King                  AD_PRES President                                      24000
Kochhar               AD_VP   Administration Vice President                   17000
De Haan               AD_VP   Administration Vice President                   17000
Hartstein             MK_MAN Marketing Manager                              13000
Faviet                FI_ACCOUNT Public Accountant                              9000
Chen                  FI_ACCOUNT Public Accountant                              8200

通过以上操作,我们可以更好的理解HR表在实际情况下的应用,以及其设计的精髓。

总体而言,Oracle HR表作为一个经典模板,在HR系统的开发中被广泛使用。其各字段的设计是非常重要的,这也是一个好的表设计的体现之一。