我的Col_1
看起来像这样 -
2015年1月20日11:12:00.000000
2015年1月21日13:00:00.000000
......等等。
我想做(第2行 - 第1行)并将结果显示为1572分钟。
此外,有人可以告诉我如何简单地将此单元格的格式更改为
mm/dd/yy hh:mm:ss
并删除所有小数?
答案 0 :(得分:0)
这应该让你思考正确的方向。如果您不希望按照您尝试进行时间算术的实际列排序的窗口,则窗口函数的ORDER BY
可能需要是您表上的另一列。如果您可以分享有关该表的更多详细信息或自己尝试SQL,我们可能会找到更好的解决方案。
SELECT (MIN(Col_1)
OVER(PARTITION BY 1 ORDER BY Col_1
ROWS BETWEEN 1 FOLLOWING AND 1 FOLLOWING) -
Col_1) MINUTE(4) AS MinutesElapsed
FROM MyTable;
使用您提供的原始数据作为样本:
SELECT (TIMESTAMP '2015-01-21 13:00:00.00000' -
TIMESTAMP '2015-01-20 11:12:00.00000') MINUTE(4) AS MinutesElapsed;
小数点:
SELECT CAST(Col_1 AS TIMESTAMP(0)) AS NewTimeStamp;