我已经将数据集上的任务委托给从其他数据源预提取的数据集,并且我目前只有Access可用于查询此数据(Excel的基本数据分析较少比目前的行限制)。从本质上讲,我有三个相关领域:用于提取时间戳差异的SQL查询
FK_ID =与交易的状态相关联的交易
CD =代码关联任意数量(只承担BEGIN和END是值)
TIMESTAMP =的时间戳交易
现在这个数据集的一个简单的例子:
FK_ID CD TIMESTAMP
000012 END 2012-01-02-14.27.59.133612
000012 BEGIN 2012-01-02-14.27.57.176631
000015 END 2011-12-12-14.27.59.133612
000015 BEGIN 2011-12-11-14.27.59.133612
000019 END 2011-11-10-14.27.59.133612
000019 BEGIN 2011-11-09-14.27.59.133612
000019 END 2011-11-08-14.27.59.133612
000019 BEGIN 2011-11-07-14.27.59.133612
正如你所看到的,它不是版本y复杂,问题是我需要计算每个唯一FK_ID的BEGIN和END代码之间的时间戳差异,然后创建一个列来计算该差异,同时也解释了一些FK_ID具有与多个时间戳BEGIN/END对关联的事实他们。
现在我已被授权忽略存在多于一对的情况(通过忽略,我的意思是只计算最初的一对),但它不是优选的。
我需要获得这些差异,以确定总平均时间,以确定该时间是否在我们的目标范围内。
对于每个FK_ID对或您建议的其他自动化方式获取此时间戳差异的最佳查询是什么?
我的确了解SQL并且在C#中精通足够,但时间框架和其他因素对我的逻辑分解能力造成了巨大破坏。
您正在使用哪种RDBMS? – 2012-03-22 04:17:45
这是什么来自我不知道,我只能访问一个电子表格,我不得不导入到Access(我相信这是Jet Engine)。我无法访问源数据库,并且由于我们的基础架构,无法获取访问权限,并且除了作为大型机作业之外,不能运行查询。 – 2012-03-22 04:22:07
您是否可以确保在相同fk_id的时间戳中不会有重叠。换句话说,每个START后跟STOP,而不是另一个START。 – 2012-03-22 04:22:07