获取两行之间的日期差的Oracle SQL问题[已关闭]

sbtkgmzw  于 2023-03-22  发布在  Oracle
关注(0)|答案(1)|浏览(92)

已关闭。此问题需要details or clarity。当前不接受答案。
**想要改进此问题?**添加详细信息并通过editing this post阐明问题。

8小时前关门了。
Improve this question
我有数据如下表

name     Phone    last login      created date
Joe      9259241517    21-Mar-2023   15-mar-2023 10:15:00
Pete     9259241518    22-Mar-2023   15-mar-2023 11:15:00
Joe      9259241517    21-Mar-2023   15-mar-2023 09:15:00
Pete     9259241518    22-Mar-2023   15-mar-2023 07:35:00

我需要找到的行是有〈2小时的差异,在创建日期。在上述情况下,我需要得到只有行的“乔”
感谢您的帮助,问候

y53ybaqx

y53ybaqx1#

这会有用的。

ALTER SESSION SET NLS_DATE_FORMAT = 'DD-MON-YYYY HH24:MI:SS';

 with data( name,  create_date, last_login ) AS (
     SELECT 'John', TO_DATE('2023-03-21 10:11:13','YYYY-MM-DD HH24:MI:SS'), TO_DATE('2023-03-21 17:48:09','YYYY-MM-DD HH24:MI:SS') FROM DUAL UNION ALL
     SELECT 'Jane', TO_DATE('2023-03-21 10:11:13','YYYY-MM-DD HH24:MI:SS'), TO_DATE('2023-03-21 11:11:09','YYYY-MM-DD HH24:MI:SS') FROM DUAL UNION ALL
     SELECT 'Mary', TO_DATE('2023-03-21 10:00:00','YYYY-MM-DD HH24:MI:SS'), TO_DATE('2023-03-21 12:00:00','YYYY-MM-DD HH24:MI:SS') FROM DUAL
     )
   --
   -- end of sample data
   --
   select *
  from   data
  where  last_login-create_date < (2/24)

NAME CREATE_DATE          LAST_LOGIN
---- -------------------- --------------------
Jane 21-MAR-2023 10:11:13 21-MAR-2023 11:11:09

相关问题