mysql で日時を数値で取得する方法のメモ。
日時を数値で取得する場合に、unix_timestamp() を使うと数値で日時を取得できます。
しかし、unix_timestamp() だと2038年問題があり、期待した結果が得られないことがあります。
以下のようにすれば、日時を数値で取得することができます。
年が4桁を超える場合には、decimal(14) の 14 を増やす必要がありますが。
日時を数値で取得する場合に、unix_timestamp() を使うと数値で日時を取得できます。
select unix_timestamp('2019-09-16 00:00:00'); 1568559600
しかし、unix_timestamp() だと2038年問題があり、期待した結果が得られないことがあります。
select unix_timestamp('9999-01-01 00:00:00'); 0
以下のようにすれば、日時を数値で取得することができます。
select cast(date_format('9999-01-01 00:00:00', '%Y%m%d%H%i%s') as decimal(14)); 99990101000000
年が4桁を超える場合には、decimal(14) の 14 を増やす必要がありますが。