ホームページ >データベース >mysql チュートリアル >時間値を含む MySQL テーブルから 1 週間の総労働時間を計算するにはどうすればよいですか?

時間値を含む MySQL テーブルから 1 週間の総労働時間を計算するにはどうすればよいですか?

DDD
DDDオリジナル
2024-11-06 22:13:02560ブラウズ

How can I calculate the total hours worked in a week from a MySQL table with time values?

MySQL での時間差の計算

特定の形式の日時値を持つ MySQL テーブルがあり、その差を計算したいと考えています。それらの間の結果を合計して、特定の期間の合計時間を取得します。これを実現する方法を見てみましょう。

TIME_TO_SEC() と SEC_TO_TIME() の使用

TIME_TO_SEC() 関数は、時刻値を「HH:MM:」形式に変換します。 SS」を秒数に変換します。 2 つの時間値の差を計算するには、次の式を使用できます。

TIME_DIFFERENCE = TIME_TO_SEC(END_TIME) - TIME_TO_SEC(START_TIME)

ただし、必要な出力は時間単位であるため、時間の差を秒から時間に変換する必要があります。これは、SEC_TO_TIME() 関数を使用して実行できます。

TOTAL_HOURS = SEC_TO_TIME(TIME_DIFFERENCE)

合計時間の計算

1 週間など、特定の期間の合計時間を確認するにはでは、次のクエリを使用できます:

SELECT SEC_TO_TIME( SUM( TIME_TO_SEC( `time` ) ) ) AS total_time
FROM time_table;

このクエリでは、TIME_TO_SEC() 関数が時間列の各時間値に適用されます。次に、結果は SUM() 関数を使用して合計されます。最後に、SEC_TO_TIME() 関数を使用して合計秒数を時間に変換し、目的の出力を提供します。

以上が時間値を含む MySQL テーブルから 1 週間の総労働時間を計算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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