Oracle系列---【查询日期差大于300秒的数据】
1.问题
交易日期和消费日期差值太大,需要查出差值大于5分钟的数据,oracle中没找到现成的函数,找了好久,记录一下。
2.sql
#方案一(推荐)
#两个字段类型都是TIMESTAMP
SELECT *
FROM transactions
WHERE txn_time - create_tm > INTERVAL '300' SECOND;
#方案二
#两个字段类型都是TIMESTAMP
SELECT *
FROM transactions
WHERE EXTRACT(SECOND FROM (txn_time - create_tm)) +
EXTRACT(MINUTE FROM (txn_time - create_tm)) * 60 +
EXTRACT(HOUR FROM (txn_time - create_tm)) * 3600 > 300;
愿你走出半生,归来仍是少年!