leading-project/finereport/xiazuan/5_manpower/2_员工满编率明细.sql

68 lines
2.4 KiB
MySQL
Raw Normal View History

2024-10-28 17:31:37 +08:00
SELECT
T1.hr_comm_name AS hr_comm_name
,T1.hr_organ_name AS hr_organ_name
,T1.bzs AS bzs -- 当月编制数
,T1.zzs AS zzs -- 当月在职数
,'0' AS target_full_rate -- 月均满编率目标
,CASE when T1.bzs = 0 then 0 else T1.zzs / T1.bzs end AS full_rate -- 月度满编率
,'0' AS target_rate -- 月均满编率目标
,T1.rate AS rate -- 月均满编率实际
FROM
(
SELECT
B.hr_comm_name AS hr_comm_name
,B.hr_organ_name AS hr_organ_name
,SUM(A.bzs) AS bzs
,SUM(A.zzs) AS zzs
,CASE WHEN SUM(bzs) = 0 THEN 0 ELSE SUM(zzs) / SUM(bzs) END AS RATE
2024-10-28 17:31:37 +08:00
FROM
(
SELECT
pq -- 片区
,xm -- 项目
,zzs -- 在职数
,bzs -- 编制数
,rq
FROM ods_hr_view_mbl_d
WHERE rq = '${p_ym}'
2024-10-28 17:31:37 +08:00
-- 注意 目前会有一个空的排名 是因为佳美物业未做映射
AND pq NOT IN('89','267')
2024-10-28 17:31:37 +08:00
)A
LEFT JOIN
(
SELECT
organ_code -- erp片区编码
,organ_name -- erp片区名称
,hr_organ_id -- hr片区编码
,hr_organ_name -- hr片区名称
,hr_comm_id -- hr项目id
,hr_comm_name -- hr项目名称
FROM dim_organ_mapping
2024-10-28 17:31:37 +08:00
WHERE hr_organ_name IS NOT NULL
GROUP BY
organ_code
,organ_name
,hr_organ_id
,hr_organ_name
,hr_comm_id
,hr_comm_name
UNION ALL
SELECT
'0000' AS organ_code -- erp片区编码
,'' AS organ_name -- erp片区名称
,'153' AS hr_organ_id -- hr片区编码
,'领悦集团总部' AS hr_organ_name -- hr片区名称
,'153' AS hr_comm_id -- hr项目id
,'领悦集团总部' AS hr_comm_name -- hr项目名称
FROM dual
2024-10-28 17:31:37 +08:00
)B
ON A.pq = B.hr_organ_id
2024-10-28 17:31:37 +08:00
and A.xm = B.hr_comm_id
WHERE 1=1
2024-10-28 17:31:37 +08:00
${IF(LEN(p_area)>0," AND B.organ_code IN ('" + p_area +"')", "")}
GROUP BY
B.hr_comm_name
,B.hr_organ_name
)T1