我有一个员工表,其中包含 emp_id、headcount、fte、effective_date、status、status_2 等列。
我需要创建一个以起始日期和结束日期为输入的报告。这将根据有效日期进行检查。
如果输入是从日期 = 2012 年 1 月 1 日到结束日期 2013 年 2 月 25 日,则结果应以如下格式显示,如下图所示。
数字 1,0,10,20 表示指定月份的总人数。
例如,如果 3 月份有 5 名员工的生效日期,则 3 月份的列中将有 5 名,然后这 5 名员工将根据员工的 status 和 status_2 列再次拆分。
例如,在这 5 个中,2 个可能是状态 A,状态_2 A1 3 可能是状态 A,状态_2 A2
如何编写查询以获取这种格式的结果?
下面是员工表的 DDL。
--------------------------------------------------------
-- DDL for Table BI_EMPLOYEE
--------------------------------------------------------
CREATE TABLE "HEADCOUNT_BI"."BI_EMPLOYEE"
(
"EMP_ID" NUMBER(*,0) NOT NULL ENABLE,
"STATUS" NUMBER(*,0),
"STATUS_2" NUMBER(*,0),
"FTE" FLOAT(126),
"EFFECTIVE_DATE" DATE,
"HEADCOUNT" NUMBER(*,0),
CONSTRAINT "HEADCOUNT_EMPLOYEE_BI_PK" PRIMARY KEY ("EMP_ID") ENABLE
);