MySQL 日付を指定して西暦0年から経過した日数を取得する

MySQL 日付を指定して西暦0年から経過した日数を取得する

MySQLで、日付を指定して西暦0年から経過した日数を取得する手順を記述してます。

環境

  • OS ubuntu21.10
  • MySQL Ver 8.0.27-0ubuntu0.21.10.1 for Linux on x86_64 ((Ubuntu))
  • MySQL Workbench 8.0.27

手順

日付を指定して西暦0年から経過した日数を取得する場合は、「TO_DAYS()」を使用します。

TO_DAYS( 日付 )

実際に、実行してみます。

SELECT 
TO_DAYS('2021-01-01'),
TO_DAYS('2021-01-02'),
TO_DAYS('2021-01-02 12:34:56')

実行結果をみると、日数が取得されていることが確認できます。

「0000-00-00」を指定

「0000-00-00」を指定すると、「0」とみなされて「null」が返ります。

SELECT 
TO_DAYS('0000-00-00')

実行結果

存在しない日付を指定

存在しない日付を指定した場合は「null」が返ります。

SELECT 
TO_DAYS('2000-20-00')

実行結果