我有一个要求,在那里,我需要转换两个记录,将有一个完整的一天(24小时周期)的时间跨度。
Eg : Record 1 - Time from 3:00 Am to 12:59:59 PM
Record 2 - Time from 00:00 AM to 2:59:59 AM
表结构是
start_time | end_time |local_start_time |local_endtime |
2015-01-01 3:00:00 | 2015-01-01 23:59:59 | 2015-01-01 4:00:00 | 2015-02-01 01:59:59
2015-02-01 12:00:00| 2015-02-01 2:59:59 | 2015-02-01 13:00:00 |2015-02-01 3:59:59
从这两个记录中,我需要在24小时内创建96个记录。每一张唱片都应该是一刻钟的一张唱片。
Eg:
start_time | end_time |local_start_time |local_endtime | Quarter_hour
2015-01-01 3:00:00 | 2015-01-01 3:14:59|2015-01-01 4:00:00 | 2015-01-01 4:14:59 | 1
2015-01-01 3:15:00 | 2015-01-01 3:29:59|2015-01-01 4:15:00 | 2015-01-01 4:29:59 | 2
以此类推,直到每1天一刻钟变成96。
我不知道如何实施这一点。任何帮助都是非常有用的。谢谢
1条答案
按热度按时间1qczuiv01#
诚恳地说,我从来没有和 Impala 一起工作过,但是如果我只想用sql语句。。我的方法可以是:
我需要每小时25美分:
我需要几个小时(除了oralce connect条款,您还有其他选择吗?):
如果你用这两句话连接起来。。。
你有96张你想要的唱片!
如果你想在两次之间选择四分之一。。。比如说。。14:09:00至15:06:30的宿舍:
输出:
您可以在这里找到一个SQLFiddle示例
小心
from dual
子句中,它仅适用于oracle dbms。