结果集重命名后,就可以对其中的数据进行增、删、改、导出等操作了,例如将上面的结果集进行重命名,点击按钮,设置结果集名称为Emp:
点击确定,结果集界面如下:
本章节主要介绍对结果集数据的增、删、改等常规操作。
l 追加行
点击按钮,在结果集最后一行下面添加一行
l 追加列
点击按钮,在结果集最后一列后面追加一列
l 插入行
点击按钮,在选中的行或选中的某一单元格前插入一行
l 插入列
点击按钮,在选中的列或选中的某一单元格前插入一列
l 删除行
点击按钮,删除当前选中的某一行或多行
l 删除列
点击按钮,删除当前选中的某一列
l 上移行
点击按钮,上移当前选中的某一行或多行
l 下移行
点击按钮,下移当前选中的某一行或多行
l 左移列
点击按钮,左移当前列
l 右移列
点击按钮,右移当前列
l 修改
选中单元格后双击,可修改单元格中的数据
l 复制
选中一行或多行,右击选择复制,将当前选中行的数据复制到粘贴板中
l 剪切
选中一行或多行,右击选择剪切,将当前选中行剪切掉
l 粘贴
选中行,右击选择粘贴,将粘贴板上的数据粘贴到当前位置,注意剪贴板的数据结构跟当前表一致时方可粘贴
本章节主要学习如何对数据做更复杂的计算,如过滤、排序、分组等操作。
l 数据过滤
需要对一个或多个字段进行过滤时,右击结果集数据选择数据过滤,通过过滤表达式筛选出符合条件的记录,例如查询Emp结果集中部门属于销售部且工资大于5000的员工信息,过滤表达式为:DEPT == "Sales" && SALARY > 5000
点击确定,结果如下:
过滤表达式中除了可以使用操作符还支持使用集算器函数,例如对上面的结果集继续进行过滤,筛选员工名字首字母为J的员工信息,过滤表达式为:like(NAME,"J*")
点击确定,结果如下:
l 数据排序
双击表头字段,可对当前列进行排序,例如将Emp结果集根据工资进行排序,双击SALARY,列值则升序排序:
再次双击SALARY,列值可切换为降序排列。拖拽字段名称还可改变结果集中的字段列顺序。
l 数据分组
编辑命令区可以通过SPL命令对结果集进行分组计算,例如将Emp结果集按照DEPT字段分组,并计算每组的平均工资:
SPL:Emp.groups(DEPT;avg(SALARY):AVG_Salary),点击执行结果如下:
了解更多数据分组用法,可参考分组与汇总章节。
l 集合运算
通过SPL命令可以对多个结果集进行集合运算,以StockRecord2013与StockRecord2014为例,将两组数据进行合并,StockRecord2013与StockRecord2014结果集内容如下:
执行命令:[StockRecord2013,StockRecord2014].union()
结果如下:
多个结果集进行并集运算时,除了使用union函数,还可以直接使用&操作符,例如上面的命令可以使用StockRecord2013&StockRecord2014代替,执行结果相同。
类似的,交集运算使用[A,B].isect() 或 A^B ;差集运算使用[A,B].diff() 或A\B;和列运算使用[A,B].conj()或A|B。
l 数据连接
通过SPL命令还可以将多个结果集进行数据连接。仍然以StockRecord2013与StockRecord2014为例,将两个表按位置连接。
执行命令:
join@p(StockRecord2013;StockRecord2014).new(~.#1.SID,~.#1.Date,~.#1.Closing,~.#2.Date,~.#2.Closing)
结果如下:
本章节主要介绍如何将编辑后的结果集保存到文件中。
l 保存为文本
点击按钮,可将当前结果集保存为txt格式的文本文件
l 导出到文件
点击按钮,可将当前结果集导出为多种格式的文件,文件格式支持ctx,btx,txt,csv,xlsx,界面如下:
设置导出文件名称,选择导出文件类型、选项,勾选导出字段,主键,点击确定,导出到数据文件中。
导出字段信息(标题):将字段信息(标题)作为第一行写入文件;
追加写入:追加写入,追加的内容要与原文件内容结构相同,否则报错;
分段写入到二进制文件中:写成二进制文件,速度更快;
换行符使用windows风格:换行符使用windows风格,即用\r\n,缺省操作系统规定;
导出的文本字段值和标题都带有引号:导出的文本字段值和标题都带有引号;
用引号作为转义符:数据中有双个引号转成一个引号,其它字符不转义。