您现在的位置:早教启蒙网 >> 人工成本统计分析报告 >> 人力成本统计分析,质量成本统计分析报告,铸造车间统计成本分析,建筑成本统计分析表

人力成本统计分析,质量成本统计分析报告,铸造车间统计成本分析,建筑成本统计分析表

时间:2013-08-17 来源: 早教启蒙网

人事管理 2 home back first prev next last 22--11 ?你们项目组现在负责开发一个人事管理系统你负责人力成本统计分析报表生成任务. ?项目经理告诉你 –报表涉及的两个数据表 ...

人事管理 人力成本统计分析任务 任务背景 2-1 ? 你们项目组现在负责开发一个人事管理系统,你 负责人力成本统计分析报表生成任务。

? 项目经理告诉你: – 报表涉及的两个数据表 DEPARTMENTS、EMPLOYEES 已 经设计好,可通过 dept_emp.txt 脚本创建 – 报表应提供如下信息: ? 各部门人数,工资总额,平均工资,最高工资,最低工资,工 资差距指数(标准方差) – 除报表外,应采取饼图、柱状图、曲线图等直观方式来 显示统计结果 home back first prev next last 2 任务背景 2-2 ? 项目经理告诉你 – 通过你开发的报表、图表,人力资源部经理可 容易的了解: ?哪些部门工资水平高? ?哪些部门工资水平低? ?哪些部门工资差距比较大? ?哪些部门工资成本最高? – 参考下面的报表设计,有助于你完成任务 home back first prev next last 3 报表设计 3-1 ? 工资水平 分析报表 home back first prev next last 4 报表设计 3-2 ? 工资差异分析报表 home back first prev next last 5 报表设计 3-3 ? 人力成本分析报表 home back first prev next last 6 关键技术 ? 分组(聚集)函数 – 分组函数介绍 ? APEX 图表创建 – 参见下面的构建步骤 home back first prev next last 7 报表构建 9-1 ? 工资水平分析报表 ? 创建页,选择 chart 页类型 home back first prev next last 8 报表构建 9-2 ? 下一步选择 Flash Chart 图表类型 ? 下一步, page name 输入:

salary_analysis ? 下一步,选择 Do not use tabs home back first prev next last 9 报表构建 9-3 ? 下一步,选择 2D Line Chart Type 在本页,选择图表类型后· ,点 击 Update 按钮可预览图表效果 home back first prev next last 10 报表构建 9-4 ? 下一步输入 SQL 查询 Build Query 按钮可激活查询构 造向导,引导你构造查询语句 home back first prev next last 11 报表构建 9-5 ? 创建并运行页 ? 编辑本页,添加报表区域 home back first prev next last 12 报表构建 9-6 ? 选择 SQL Report home back first prev next last 13 报表构建 9-7 ? 输入查询语句,并创建区域,运行页 home back first prev next last 14 报表构建 9-8 ? 工资差异分析报表 – 重复创建图表步骤 – 选择 2D Column 图表类型 – 用下面 SQL 语句来创建 SELECT null link, department_name label, VARIANCE(SALARY) 工资方差 FROM employees e, departments d WHERE e.department_id = d.department_id GROUP BY department_name; home back first prev next last 15 报表构建 9-9 ? 人力成本分析报表 – 重复创建图表步骤 – 选择 3D Pie 图表类型 – 用下面 SQL 语句来创建 SELECT null link, department_name label, SUM(SALARY) 工资总额 FROM employees e, departments d WHERE e.department_id = d.department_id GROUP BY department_name; home back first prev next last 16 图表测试 ? 根据你所创建的图表,分析现有数据: – 哪个部门工资水平最高? – 哪个部门工资水平差异最大? – 哪个部门人力成本最高? home back first prev next last 17 作业与练习 ? 计算平均提成 – 员工的提成为 salary*COMMISSION_PCT ?第一种方法:只计算有提成员工的平均提成 ?第二种方法:计算所有员工的平均提成 ? 计算员工总人数 ? 计算员工的不同工资数 ? 计算员工的不同工作种类数目(JOB_ID) home back first prev next last 18 总结 ? 掌握分组函数使用方法 ? 掌握 APEX 图表使用方法 home back first prev next last 19 分组(聚集)函数 27-1 ? 在SQL 中,以下分组函数可对整个表或一组特定的行执行 运算。每个函数返回一个结果。 – MIN ? 用于存储任何数据类型的列,返回最小值。 – MAX ? 用于存储任何数据类型的列,返回最大值。 – COUNT ? COUNT(表达式) 返回表达式列中非空值的数量。

? COUNT(*) 返回表中满足SELECT 语句的条件的行数。 – AVG ? 用于存储数值数据的列,计算平均值。 – SUM ? 用于存储数值数据的列,计算值的总和。 home back first prev next last 20 分组(聚集)函数 27-2 : 1 、 7、 4、 8 ?例如,有四个数字 VARIANCE:

– 用于存储数值数据的列,计算数 最小值 MIN 是 1 据在平均值左右的分布情况。例 最大值 MAX 是 8 如,如果班级上次测验的平均分 总和 SUM 是 20 =到 1+7+ 4+8 是82%,学生的分数范围在 40% 100% 之间,则此分数的差异将比 数目 COUNT 是 4 学生的分数范围在78% 到88% 的 平均值 AVG 是 5 = SUM/ COUNT 情况下大。 ? STDDEV: – 与variance 类似,标准偏差测量 ( (1-AVG)* (1-AVG) + 数据的分布情况。对于平均值大 致相同的两组数据,分布越广, (7-AVG) * (7-AVG) + 标准偏差就越大。 方差 VARIANCE 是 (4-AVG) * (4-AVG) + (8-AVG) * (8-AVG) )/ (COUNT-1) =10 21 标准差 STDDEV 是方差 VARIANCE 的平方根 home back first prev next last 分组(聚集)函数 27-3 ? 组函数使用要点: – 组函数会忽略空值。因 为任何值和空值进行运 算,结果还是空值。忽 略空值可确保得到一个 运算结果。

– 在下面的示例中,计算 平均加班费率时没有使 用(null) 值。 home back first prev next last 22 分组(聚集)函数 27-4 ? 组函数使用要点: – SELECT 子句中可有多个基于相同或不同列的组 函数。

– 还可使用WHERE 子句,将组函数限制在表的子 集上。 SELECT MAX(salary), MIN(salary), MIN(employee_id) FROM employees WHERE department_id = 60; home back first prev next last 23 分组(聚集)函数 27-5 ? 组函数使用要点: – MIN 和MAX 两个组函数可用于任何数据类型。

– 使用这些函数,可以找出列表中最后一个人的 姓名、最低薪金或最早的聘用日期。

– 例如,很容易在按字母排序的雇员列表中找到 姓名列在第一行的雇员。 SELECT MIN(last_name) FROM employees; home back first prev next last 24 分组(聚集)函数 27-6 ? 组函数使用要点: – 组函数忽略空值。

– MIN 和MAX 可用于任何数据类型; – SUM、AVG、STDDEV 和VARIANCE 只能用于数 值数据类型。 home back first prev next last 25 分组(聚集)函数 27-7 ? 组函数使用语法 SELECT [col1, ] GROUP_FUNCTION(col2) [,…] FROM table1,… [WHERE condition] [GROUP BY col1,…] [HAVING group_condition] [ORDER BY col1,…]; – 如果有 WHERE 子句,先执行 WHERE ,根据其条件排除掉无关记 录 – 如果有 GROUP 子句,则先按其指定列的值将剩余记录分组;否则 所有记录被看作一组 – 对每组记录计算分组函数 – 如果有 HAVING 子句,则根据其中条件选择要显示哪些分组的结果 – 执行 SELECT 子句,返回相应列 – 执行 ORDER BY子句,对返回结果进行排序 home back first prev next last 26 分组(聚集)函数 27-8 ? GROUP BY – 可以使用GROUP BY 子 句将表中的行分成较小 的组。然后,可以使用 组函数返回每个组的汇 总信息。

– 在所示的SELECT 语句 中,根据“部门标识” 对行进行分组,然后将 AVG 函数自动应用于每 个组。 SELECT department_id, AVG(salary) FROM employees GROUP BY department_id; home back first prev next last 27 分组(聚集)函数 27-9 ? GROUP BY – 如果想知道每个部门中雇 员的最高薪金,该怎样做? 可使用GROUP BY 子句指 定依据哪一列对行进行分 组? SELECT MAX(salary) FROM employees GROUP BY department_id; – 但如何区分哪个最高薪金 属于哪个部门呢? home back first prev next last 28 分组(聚集)函数 27-10 ? GROUP BY – 通常,我们采用的方法是在SELECT 列表中包含 GROUP BY 列。 SELECT department_id, MAX(salary) FROM employees GROUP BY department_id; home back first prev next last 29 分组(聚集)函数 27-11 ? 组函数要求,在SELECT 子句中所列出的任 何不属于组函数组成部分的列,都必须在 GROUP BY 子句中列出。 – 此示例中有什么错误? SELECT job_id, last_name, AVG(salary) FROM employees GROUP BY job_id; home back first prev next last 30 分组(聚集)函数 27-12 ? 还可使用WHERE 子句排除一些行,然后再 将剩余行分组。 SELECT department_id, MAX(salary) FROM employees WHERE last_name <>

‘King’ GROUP BY department_id; home back first prev next last 31 分组(聚集)函数 27-13 ? GROUP BY 原则 – 使用GROUP BY 子句时,应遵循的重要原则有: ?如果SELECT 子句中不仅包含组函数(AVG、SUM、 COUNT、MAX、MIN、STDDEV、VARIANCE), 还包含其它个体列,则这些个体列还必须出现在 GROUP BY 子句中。

?不能在GROUP BY 子句中使用列别名。

?WHERE 子句可在对行进行分组之前排除某些行。 home back first prev next last 32 分组(聚集)函数 27-14 ? 组内组 – 有时需要将组分为更 小的组。例如,您可 能希望根据部门对所 有雇员进行分组;然 后,在每个部门中, 按职务进行分组。

– 本示例说明每个部门 中从事每项工作的雇 员各有多少。 SELECT department_id, job_id, count(*) FROM employees WHERE department_id >

40 GROUP BY department_id, job_id; home back first prev next last 33 分组(聚集)函数 27-15 ? 嵌套组函数 – 使用GROUP BY 时,可以嵌套两层组函数。 SELECT max(avg(salary)) FROM employees GROUP by department_id; – 此查询将返回几个值?答案是一个——此查询将 找出每个部门的平均薪金,然后从该列表中选 择最大值。 home back first prev next last 34 分组(聚集)函数 27-16 ? HAVING – 假设我们想找出每个部门的最高薪金,但仅针 对有多个雇员的部门进行查找,那该怎么做? 此示例中有什么错误? SELECT department_id, MAX(salary) FROM employees WHERE COUNT(*) >

1 GROUP BY department_id; 下一张幻灯片将解决此问题。 home back first prev next last 35 分组(聚集)函数 27-17 ? 组函数使用要点: – 不能在WHERE 子句中使用组函数: home back first prev next last 36 分组(聚集)函数 27-18 ? HAVING – 与使用WHERE 子句限定所选行一样,您可以使用 HAVING 子句来限定组。

– 在使用GROUP BY 和HAVING 子句的查询中,将首先对行 进行分组,然后应用组函数,这样将仅显示与HAVING 子句匹配的组。

– WHERE 子句用于限制行;HAVING 子句用于限制由 GROUP BY 子句返回的组。 SELECT department_id, MAX(salary) FROM employees GROUP BY department_id HAVING COUNT(*) >

1; home back first prev next last 37 分组(聚集)函数 27-19 ? 在SELECT 语句中,尽管可将HAVING 子句用于 GROUP BY 子句之前,但建议您按以下所示的顺序 放置每条子句。如果使用ORDER BY 子句,请始终 将其放在最后! SELECT 列, 组函数 FROM 表 WHERE GROUP BY HAVING ORDER BY home back first prev next last 38 分组(聚集)函数 27-20 ? DISTINCT – 关键字DISTINCT 用 于仅返回查询中的 非重复值或非重复 值的组合。

– 请看右边的查询。

如果不使用关键字 DISTINCT,该查询将 返回D_CDS 表中的 所有年份值。 SELECT year as ‘CD Year’ FROM d_cds; home back first prev next last 39 分组(聚集)函数 27-21 ? DISTINCT – 要消除重复行,请 按此处所示使用 DISTINCT 关键字。

– 使用DISTINCT 关键 字只返回了所有 CD 年份一次,而 没有重复值。 SELECT DISTINCT year AS ‘CD Year’ FROM d_cds; home back first prev next last 40 分组(聚集)函数 27-22 ? DISTINCT – 关键字DISTINCT 可 与所有组函数一起 使用。使用 DISTINCT 后,函数 将仅考虑非重复值。

– 为什么右侧的两个 语句生成不同的结 果? SELECT SUM(salary) FROM employees WHERE department_id = 90; SELECT SUM(DISTINCT salary) FROM employees WHERE department_id = 90; home back first prev next last 41 分组(聚集)函数 27-23 ? DISTINCT – 将DISTINCT 与组函 数(如COUNT)一 起使用时,结果集 将返回非重复列值 的数量。

– 雇员们一共从事多 少种不同的工作? – 有多少种不同的薪 金? SELECT COUNT (DISTINCT job_id) FROM employees; SELECT COUNT (DISTINCT salary) FROM employees; home back first prev next last 42 分组(聚集)函数 27-24 ? COUNT – COUNT(表达式) 返回表达式列中 非空值的数量。 SELECT COUNT (YEAR) FROM d_cds WHERE year <

2001; – COUNT(DISTINCT 表达式) 返回表达 式列中唯一且非 空值的数量。 SELECT COUNT (DISTINCT year) FROM d_cds WHERE year <

2001; home back first prev next last 43 分组(聚集)函数 27-25 ? COUNT – 第一个查询为什么返 回null 值?共列出了 六条备注,但count 函数只返回了5。为 什么? – 因为COUNT 忽略列中 的null 值。 SELECT comments FROM d_play_list_items; SELECT COUNT(comments) FROM d_play_list_items; home back first prev next last 44 分组(聚集)函数 27-26 ? COUNT – COUNT(*) 返回表中满足 SELECT 语句的条件的 行数。 ? 例如,要了解在表中 2001 年之前出品了多少 张CD,可在SELECT 语 句中使用COUNT。 SELECT COUNT (*) FROM d_cds WHERE year <

2001; – 希望计算所有行(包括 在一列或多列中有空值 的行)时,可使用 COUNT(*)。 home back first prev next last 45 分组(聚集)函数 27-27 <返回> ? NVL – 有时需要在组函数中包括空值。 ?例如,了解每天顾客所下订单的平均数量,可判断 每个月所订的食品数。

?有几天餐厅未营业没有顾客,但店主发现相比较仅 计算有顾客的天数的平均值而言,计算包括每一天 的平均值反映的情况要准确。

?可使用以下语句开始编写包括空值的SELECT 语句 SELECT AVG(NVL(customer_orders, 0)) home back first prev next last 46

人事管理 人力成本统计分析任务 任务背景 2-1 ? 你们项目组现在负责开发一个人事管理系统,你 你们项目组现在负责开发一个人事管理系统, 负责人力成本统计分析报表生成任务...

人力资源管理最简单的成本分析,可以分为两种: 显性的成本:招聘成本(如登广告、参加展会等)、培训成本(内训和外训等)等等,以及人力资源管理部门各类支出...

这个问题就是要依靠数据来找原因了:1、该企业人工成本的变动分析,人工成本增加了96万,增加的原因主要是什么,一班情况下增加的原因无非就是人员数量的增加与...

 
本类热门
  • 早教启蒙网(www.zaojiaoabc.com) © 2014 版权所有 All Rights Reserved.