ホームページ >データベース >mysql チュートリアル >MySQL DATETIME フィールドから時間を減算するにはどうすればよいですか?

MySQL DATETIME フィールドから時間を減算するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-03 06:51:09775ブラウズ

How to Subtract Hours from a MySQL DATETIME Field?

MySQL 日時フィールドから時間を減算する

MySQL で日付と時刻のデータを扱う場合、多くの場合、時間を考慮して時間値を操作する必要があります。タイムゾーンや時差について。この質問では、MySQL の組み込み関数を使用して日時フィールドから時間を減算する方法について説明します。

MySQL の解決策: DATE_SUB()

MySQL は、特に DATE_SUB() 関数を提供します。日時値から指定された間隔を減算します。この場合、日時フィールドから 3 時間を減算するには、次のクエリを使用できます。

SELECT DATE_SUB(x.date_entered, INTERVAL 3 HOUR) AS date FROM x ORDER BY date ASC;

代替アプローチ: タイム ゾーンの問題を解決する

使用中DATE_SUB() は有効な解決策ですが、根本的なタイムゾーンの問題を代わりに解決できるかどうかを検討する価値があります。タイム ゾーンの違いは、適切に処理しないと混乱やエラーを引き起こす可能性があります。

考えられるアプローチの 1 つは、日時フィールドが一貫したタイム ゾーンで保存されるようにすることです。これは、time_zone システム変数を設定するか、クエリでタイム ゾーンを明示的に指定することによって実現できます。例:

SET time_zone = 'America/Los_Angeles';

SELECT DATE_FORMAT(x.date_entered, '%Y-%m-%d') AS date FROM x ORDER BY date ASC;
このアプローチは、タイムゾーンの不一致を排除し、日時値をより正確に表現するのに役立ちます。

以上がMySQL DATETIME フィールドから時間を減算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。