附加案例第五章:高级转换(一)

一、建立记录集连接转换工程

1.在记录集连接之前,需要预先对数据记录根据关键字段进行排序。在两个考试成绩文件中,“学号”是关键字段,因为每个学生在学校期间,“学号”是唯一的,所以对“学号”字段进行排序。建立记录集连接转换工程步骤如下。

(1) 创建记录集连接转换工程。使用Ctrl+N快捷键,创建【记录集连接】转换工程。 (2) 创建Excel输入和排序记录组件,分别导入月考语文成绩和英语成绩文件,并进行排序,预览排序后的结果。 ① 创建【Excel输入】组件,将组件名称命名为“语文成绩”,导入“月考语文成绩.xls”文件,并预览数据;接着创建【排序记录】组件,并将组件名称命名为“语文成绩排序”,再由【语文成绩】组件指向【语文成绩排序】组件,建立节点连接,设置排序参数,对“学号”字段进行排序。② 与步骤①类似,创建【英语成绩】和【英语成绩排序】组件,导入“月考英语文成绩.xls”文件,并建立它们之间的节点连接,设置排序参数,对“学号”字段进行排序,如图所示。

 ③ 单击图工作区上方的    图标,分别预览【语文成绩排序】【英语成绩排序】组件的排序结果,如图所示。

 

 (3) 创建【记录集连接】组件和连接。在【记录集连接】转换工程中,单击【核心对象】选项卡,展开【连接】对象,选中【记录集连接】组件,并拖曳到右边工作区中,并由【语文成绩排序】组件指向【记录集连接】组件,由【英语成绩排序】组件指向【记录集连接】组件,分别建立两个节点连接,加入计算器控件,计算总分,如图所示。

 双击图【记录集连接】组件,弹出【合并排序】对话框,步骤如下:(1) 确定组件名称。保留【步骤名称】默认值“记录集连接”。 (2) 确定第一个步骤名称。【第一个步骤】设置为“语文成绩排序”。 (3) 确定第二个步骤名称。【第二个步骤】设置为“英语成绩排序”。 (4) 确定连接类型。【连接类型】设置为“INNER”。 (5) 确定连接字段。① 单击【第一个步骤的连接字段】表下方的【获得连接字段】按钮,导入“语文成绩排序”中的字段,保留“学号”字段,删除其他字段。 ② 单击【第二个步骤的连接字段】表下方的【获得连接字段】按钮,导入“英语成绩排序”中的字段,保留“学号”字段,删除其他字段,设置结果如图所示,此时完成【记录集连接】组件的参数设置。

 单击【记录集连接】组件,再单击工作区上方的 图标。预览记录集连接后的数据,如图所示。

 计算总分,如图:

运行转换: 

二、 多路数据合并连接

建立多路数据合并连接转换工程步骤如下。

(1) 创建多路数据合并连接转换工程。使用Ctrl+N快捷键,创建【多路数据合并连接Multiway merge join】转换工程。

(2) 创建Excel输入和排序记录组件,分别导入月考语文成绩、数学成绩和英语成绩,并进行排序。 ① 创建【Excel输入】组件,并命名组件名称为“语文成绩”,导入“月考语文成绩.xls”文件,设置参数并预览数据;接着创建【排序记录】组件,并将组件名称命名为“语文成绩排序”,再由【语文成绩】组件指向【语文成绩排序】组件,建立节点连接,设置排序参数,对“学号”字段进行排序。

② 与步骤①类似,创建【数学成绩】和【数学成绩排序】组件,导入“月考数学成绩.xls”文件,并建立它们之间的节点连接,设置排序参数,对“学号”字段进行排序。

③ 与步骤①类似,创建【英语成绩】和【英语成绩排序】组件,导入“月考英语成绩.xls”文件,并建立它们之间的节点连接,设置排序参数,对“学号”字段进行排序。创建语文成绩、数学成绩和英语成绩排序组件的结果,如图所示。

 ④ 单击工作区上方的    图标,分别预览【语文成绩排序】【数学成绩排序】英【语成绩排序】的排序结果,分别如图所示。

 

 (3) 创建【Multiway merge join】组件和连接。在图【多路数据合并连接Multiway merge join】转换工程中,单击【核心对象】选项卡,展开【连接】对象,选中【Multiway merge join】组件,并拖曳到右边工作区中,并由【语文成绩排序】【数学成绩排序】【英语成绩排序】组件分别指向【Multiway merge join】组件,分别建立3个节点连接,如图所示。

 双击【Multiway merge join】组件,弹出【Multiway merge join】对话框,进行参数设置:

① 【Input Step1】参数设置为“语文成绩排序”,同一行的【Join Keys】参数设置为“学号”。也可以单击同一行【Select Keys】按钮,弹出【Join keys】对话框,在【Keys】表中的第1行,单击【Key Field】下的第一个输入框,在下拉框中选择“学号”,单击【确定(O)】按钮,添加“学号”字段名称至【Join Keys】参数中,如图所示。

② 与步骤①类似的操作,【Input Step2】参数设置为“数学成绩排序”,同一行的【Join Keys】参数设置为“学号”。 ③ 与步骤①类似的操作,【Input Step3】参数设置为“英语成绩排序”,同一行的【Join Keys】参数设置为“学号”。 (3) 确定连接类型。【Join Type】参数设置为“INNEER”,此时完成参数设置,如图所示。

 单击【多路数据合并连接】组件,再单击工作区上方的   图标。预览进行多路数据合并连接后的数据,如图所示。

 在【预览数据】对话框中,语文、数学和英语成绩连接合并至一张表中,因为3个源数据表的“序号”“学号”字段名称一样,而连接合并为一个表后字段名称不能相同,所以合并后第2、3个表的“序号”“学号”字段名称分别被系统改名,在实际应用中,可以使用字段选择组件移除这些多余的字段。

运行转换: 

三、 建立单变量统计转换工程

建立单变量统计转换工程步骤如下。 (1) 创建单变量统计转换工程。使用Ctrl+N快捷键,创建【单变量统计】转换工程。 (2) 创建Excel输入组件,导入考试成绩数据文件。创建【Excel输入】组件,如图所示,设置参数,导入“2018年上学期期末考试成绩.xls”文件。

 (3) 预览考试成绩数据。单击工作区上方的    图标,预览数据,如图所示。在当前源数据中,只有各科课程的分数,没有统计分数。

 (4)在【Univariate statistics】对话框中,设置参数,对学生语文、数学考试成绩进行统计。 (1) 设置组件名称。保留【Step name】默认值“单变量统计”。

(2) 在【Input fields andderived stats】表中,设置统计的各个字段参数,如图所示,此时完成【单变量统计】组件的参数设置。

 运行转换:

 

 四、建立公式转换工程

建立公式转换工程步骤如下。 (1) 创建公式转换工程。使用Ctrl+N快捷键,创建【公式】转换工程。 (2) 创建Excel输入组件和导入数据。创建【Excel输入】组件,如图所示,设置参数,导入“2018年上学期期末考试成绩.xls”文件。(3) 预览考试成绩数据。单击工作区上方的    图标,预览学生考试成绩数据,如图所示,在当前源数据中,只有各科课程的成绩,没有统计总分。

 

 (4) 创建【公式】组件和连接。在【公式】转换工程中,单击【核心对象】选项卡,单击展开【脚本】对象,选中【公式】组件,并拖曳到右边工作区中。由【Excel输入】组件指向【公式】组件,建立节点连接,双击【公式】组件,弹出【公式】对话框,在图【公式】对话框中,设置参数,利用公式计算总分,根据总分标注成绩优秀的学生。

(1) 设置组件名称。保留【步骤名称】默认值“公式”。

(2) 设置添加字段参数。在【字段】表中,添加【总分】【评优】两个新字段,分别单击两个新字段所在的单元格,编辑公式。编辑【总分】字段,如图所示。

 在【公式】转换工程中,单击【公式】组件,再单击工作区上方的 图标。预览使用公式计算后的数据,如图所示。

运行转换: 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值