我在一家公司工作,出于某种原因,我被倾倒做统计。
我得到了大量的数据转储,我可以做一些非常重复的数据按摩。
显然,第一个解决方案是编写一个脚本来为我执行此操作。我不能。我不允许将服务器下载到我的PC中,作为PHP程序员,我不能这样做。
其次,我想到将这些txt文件导入MySQL数据库并对它们运行查询。再说一次,我不能。我甚至不允许在我的电脑上安装MySQL数据库。
首先,让我描述一下我希望实现的目标。 我有一个数据转储,我正在尝试运行类似这样的查询:
SELECT SUM `price` FROM <this excel sheet> WHERE `date`>`somedate` AND `type`=`sometype`
我试图对在Excel上运行查询进行一些研究,这给了我不错的结果。我可以使用自动过滤器/高级过滤器来过滤掉与我无关的结果。然后我可以使用autosum来实现价格的总和。
然而,这是一个过长的过程。这比手动操作要好得多,但对我来说还不够好。我正在寻找一种解决这个问题的程序化方法。条件: 我无法在我的电脑上安装任何apache / mySQL服务器。但是,我允许安装软件。
解决此问题的最佳方法是什么?
答案 0 :(得分:2)
Excel不是进行“重复数据按摩”的最差工具(实际上,它通常是我执行此类任务的首选)。关键是你学习使用公式和VBA编程。使用VBA,您可以在Excel中自动执行(好的,差不多)一切,否则您可以手动执行。像上面这样的查询在VBA中需要更多行,以程序样式编写,但是您可以立即将结果存储在聚合工作表中,格式化它,添加一些代码以便事先将转储加载到Excel工作表中等等自动化整个过程,而不仅仅是查询部分。
答案 1 :(得分:1)
您可以使用FreeSQLEditor之类的工具与Excel文件建立ODBC连接。在这种情况下,您的工作表将成为表格,然后您可以对其执行查询。
更新:FreeSQLEditor是共享软件。您可以使用ODBC Query Tool代替
答案 2 :(得分:0)
您不需要SQL-Server。你可以在Excel中轻松完成。
这是一个最小的例子:
https://docs.google.com/spreadsheet/ccc?key=0AgBAVSqx4789dHA2M1lQd0JaY0hidkVfQmNqbmZjX2c&usp=sharing
如果你想要求和,你可以使用Sumifs函数。
答案 3 :(得分:0)
您应该放弃尝试DBxtra,它可以轻松连接到Excel(和其他数据库),您可以像Excel工作表一样创建SQL查询,就像它们是表格一样,让您可以轻松地将数据输出回Excel