SQLで2つの日付の差分日数を計算する【メモ】

sql-calc-date-diff

あるデータが何日前のデータなのか知りたい時ってあるよね〜?
プログラミングでは、便利な関数が用意されていることもありますが、逆にタイムスタンプに変換して60だの24だの掛け算したり…。
日付をそのまま引き算することは難しいですが、SQL(今回はOracle)ではフォーマットを合わせればそのまま引き算できちゃいます!

SQLで日付の差分日数を求める

自分用のメモです。何てことはありません。
差分日数を求めたい2つの日付TO_DATE()で「YYYYMMDD形式にして引くだけです。
以下の例ではシステム日付、つまり、現在の日付と任意の日付を引いて、その差分日数を求めています。

SELECT TO_DATE(SYSDATE, 'YYYYMMDD') - TO_DATE('[ここに日付]', 'YYYYMMDD') FROM DUAL;

一見簡単ですが、日付形式が合わないとそれなりの対応が必要です。

この記事が気に入ったら
いいね ! しよう

Twitter で

東京生まれ福岡育ちの文系プログラマー。
テクノロジーの恩恵を感じながら日々精進しています。
広く浅くをモットーに、最近ではプログラミングだけでなく、仮想サーバーからセキュリティ、監視システムなども勉強中です。

管理者をフォローする

コメント

  1. […] こちらと合わせると何日前も算出できます。 SQLで2つの日付の差分日数を計算する【メモ】https://minory.org/sql-calc-date-diff.htmlあるデータが何日前のデータなのか知りたい時ってあるよね〜 […]

Amazon プライム対象
タイトルとURLをコピーしました