选择两个日期SQL Oracle 11g之间的小时间隔

时间:2017-06-15 13:47:31

标签: sql oracle plsql oracle11g

我为我的大学编写了一个在线视频游戏项目的触发器,这个触发器用于在游戏8小时后投放广告(我猜测触发DBMS输出)。

但我在计算这种差异时遇到了麻烦:

例如,我得到了:

LOGINDATE              LOGOUTDATE
--------------------   --------------------
15-MAG-2017 23:15:42   16-MAG-2017 02:15:54

在触发器中,我想从LOGINDATE-LOGOUTDATE中减去它的总时数,然后将其保存到一个可变的MAX_HOURS中,该MAX_HOURS将把这个技巧转化为IF语句(例如,如果MAX_HOURS> 8)< / p>

有没有办法做到这一点?

1 个答案:

答案 0 :(得分:2)

示例:

select (LOGOUTDATE - LOGINDATE)*24 
INTO MAX_HOURS 
        from your_table;

日期减法的结果以天为单位。乘以24小时即可获得小时数。