INT
は使用しません またはTIMESTAMP
日時の値を保存します。 "Year-2038-Problem"
があります ! DATETIME
を使用できます 日時を長期間保存します。
TIMESTAMP
を使用 または数値の列タイプは、1970年から2038年までの年の範囲のみを格納できます。DATETIME
1000から9999までの年の日付を保存できるタイプ。
そうではありません 数値の列タイプ(INT
を使用することをお勧めします )日時情報を保存します。 MySQL(および他のシステムも)は、日時情報を処理するための多くの関数を提供します。これらの関数は、カスタム関数や計算よりも高速で最適化されています。 https://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html
保存された値のタイムゾーンをクライアントのタイムゾーンに変換するには、 CONVERT_TZ
。この場合、サーバーのタイムゾーンとクライアントのタイムゾーンを知る必要があります。サーバーのタイムゾーンを取得するには、この質問
。