web-dev-qa-db-ja.com

日付を数値に変換する式

Excelで行われるように、10/26/2013の日付を41573の数値に変換する式を知りたいです。 10/26/2013が41573に変換される方法と同様です。

19
user2401464

セルの形式を「一般」に変更すると、Excelが1900年1月1日以降の日数として日付を保存するため、セルの日付値が表示されます。

Screenprint 1

Screenprint 2

日付がテキストで、変換する必要がある場合、DATEVALUEがこれを行います。

Datevalue function

20
Sam

最新の日付のExcel番号は、グレゴリオ暦の1899年12月30日以降の日数として最も簡単に計算されます。

Excelは、神話上の日付01/00/1900(つまり、12/31/1899)を0に対応するものとして扱い、1900年をincorrectly年として誤って扱います。したがって、1900年3月1日より前の日付の場合、Excel番号は実質的に1899年12月31日以降の日数になります。

ただし、Excelは0未満の数値をフォーマットしません(-1は##########を提供します)。したがって、これは "01/00/1900"から02/28/1900にのみ重要であり、 1899年12月30日の日付をベースとして使用します。

うるう年1900エラーを説明するDB2 SQLの完全な機能:

SELECT
   DAYS(INPUT_DATE)                 
   - DAYS(DATE('1899-12-30'))
   - CASE                       
        WHEN INPUT_DATE < DATE('1900-03-01')  
           THEN 1               
           ELSE 0               
     END
23
Coyne Tibbets