首页 文章

Oracle日期差异SQL查询[重复]

提问于
浏览
3

可能重复:计算Oracle SQL中2个日期/时间之间的差异

我有一张表,其中维护了PurchasedDate . 我必须从系统中获取日期并计算日期差异 . 由于我在Oracle工作,datediff()没有给出结果 .

样品表:

ProductID  Date
P101       31-DEC-2012
P102       29-DEC-2011

如果今天返回P102,差异应为10 .

这是一个详细的描述

BillID     ProductID   Date
101          P101        31-DEC-2012
101          P102        31-DEC-2012
102          P405        29-JUN-2012
102          P210        29-JUN-2012
105          P205         2-MAY-2012

如果客户使用BillNo 101重新调用产品P101,则系统应计算返回日期(系统日期)与购买日期之间的差异 . 如果P101在2012年1月8日返回,则答案应为10

3 回答

  • 11

    尝试

    SELECT trunc(sysdate) - PurchasedDate 
      FROM table_name;
    
  • 3

    在Oracle中,您只需减去日期即可 . 这会在几天内给你一个答案 .

    例如假设您的意思是29-dec-2012而不是29-dec-2011!

    select trunc(sysdate) - your_date from your_table;
    
    
    SQL> select trunc(sysdate) - to_date('29-dec-2012', 'dd-mon-yyyy') from dual;
    
    TRUNC(SYSDATE)-TO_DATE('29-DEC
    ------------------------------
                                10
    
  • 0

    你可以从下面链接找到有关计算oracle日期差异的好信息

    How To Calculate Difference Between Dates in Oracle SQL

相关问题