esProc Desktop是什么?

esProc Desktop:对桌面文件数据进行分析处理的工具集
SPL WIN 交互式文件数据(txt\csv\xls)计算界面
SPL XLL 增强Excel计算能力的插件
SPL IDE 供高级用户使用的全功能数据计算集成开发环境

esProc Desktop 能解决什么问题 ?

  • 手头有文件想用SQL查一下,安装数据库太麻烦了
  • 批量文件合并拆分不会搞,手工做起来累到天明
  • Excel有些公式不支持,VBA编程太繁琐
  • Excel表格分组后无法计算,大量公式手工修改
  • 重复劳动想编程处理,Python还是太难
  • ......

esProc Desktop 如何解决问题?

用SQL查询Orders.csv
常规方法需要繁琐的准备工作,包括安装数据库、建表、导入数据等
直接写SQL
某目录下的xls以日期命名,每个文件存储一天的销售记录,现在要找出2020年1月份的xls,合并各文件数据,统计出每个客户每年的销售额
批量处理文件通常要编程实现,对技术要求较高
编写并执行SQL
select Client,year(OrderDate) as y,sum(Amount) as Total 
from d:/data/202001*.xlsx 
group by Client,year(OrderDate)
说明: SPL SQL支持文件名通配符,可自动合并匹多个文件
将Excel的A1格拆分成多个单元格,结果如C1:F1
Excel公式不能按多个分隔符拆分字符串
在C1格输入公式
=spl("=?.split(""->"")",A1)
说明:在C1输入公式后,计算结果会自动溢出到D1-F1
找出各部门工资最高的前3名员工
Excel不支持分组后计算,需要大量手工操作
在I1输入公式
=spl("=E(?1).group(Dept).conj(~.top(-3;Salary))",A1:G499)
说明: group分组,~.top计算组内TopN,-3表示逆序取前3

SPL WIN

交互式文件数据计算界面


真正的SQL on File

文件数据

  • 文本:txt、csv
  • Excel:各版本xls、xlsx
  • 特殊文件:Json、XML

SQL92语法

  • Where、group by、join、union
  • as、between、like、Top-N、limit n
  • from子句、with子句、嵌套查询、Case when

高效

  • 不要求编程经验
  • 没有显式或隐藏的入库过程

SPL XLL

增强Excel计算能力的插件


功能强大的公式

增强原有函数

  • 使Vlookup函数返回多条匹配结果
  • 使datedif函数计算季度或周之差
  • 使filter函数支持模糊查询

赋予分组后计算能力

  • 组内明细的排名
  • 对组内明细按汇总值过滤
  • 用分隔符将组内多行合并为一行

简化表格式计算

  • 对两个表格进行交叉组合
  • 对表格进行全关联运算和差集运算

SPL IDE

高级用户专用的集成开发环境


完整的编程能力

完整的编程能力

强大的计算能力

  • 过滤、查询、去重、排序、关联、分组汇总
  • 按段分组、枚举分组、有序分组、条件分组
  • 转置、归并、补齐、对齐空缺、逆分组
  • 相对位置、跨行引用、移动平均

丰富的库函数

  • 数学函数:取整、正弦余弦、组合、阶乘、最大公约数、矩阵
  • 日期函数:时间序列、工作日、季度、月初、月底、周内天数
  • 字符串函数:字串位置、拆出日期、拆出数字、拆出单词

多种数据源

  • xls、csv、txt、json、xml
  • MySQL、Access、Oracle、…

更多资源



VIP课程 SPL程序设计

这里有专门为职场人员设计的、处理表格数据的程序方法,毕竟我们要学以致用,学习编程是为了处理手头的工作,而折腾表格是职场人员天天都要做的任务。