3

重複の可能性:
Oracle SQLで2つの日付/時刻の差を計算する

PurchasedDate が保持されているテーブルがあります。システムから日付を取得し、日付の差を日数で計算する必要があります。私は Oracle で作業しているため、datediff() で結果が得られません。

サンプルテーブル:

製品 ID 日付
P101 2012 年 12 月 31 日
P102 2011年12月29日

P102 が今日返された場合、差は 10 になるはずです。

ここに詳細な説明があります

BillID ProductID 日付
101 P101 2012 年 12 月 31 日
101 P102 2012 年 12 月 31 日
102 P405 2012 年 6 月 29 日
102 P210 2012 年 6 月 29 日
105 P205 2012 年 5 月 2 日

顧客が BillNo 101 の製品 P101 を返品する場合、システムは返品日 (システム日付) と購入日との差を計算する必要があります。2012 年 1 月 8 日に返された場合、P101 の答えは 10 になります。

4

3 に答える 3

12

試す

SELECT trunc(sysdate) - PurchasedDate 
  FROM table_name;
于 2013-01-08T15:09:28.420 に答える
3

Oracleでは、日付を減算するだけです。これにより、数日で答えが得られます。

たとえば、2011 年 12 月 29 日ではなく、2012 年 12 月 29 日を意味していると仮定します。

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
于 2013-01-08T15:08:54.823 に答える
0

以下のリンクから、オラクルでの日付の違いの計算に関する良い情報を見つけることができます

Oracle SQLで日付間の差を計算する方法

于 2013-01-08T15:39:53.957 に答える