他の列でグループ化しながらMySQLのDATETIME列の平均を取得する方法
P粉460377540
P粉460377540 2023-09-05 11:46:21
0
1
483
<p>次のクエリを使用して MySQL テーブルを作成し、データを設定しています。</p> <pre class="brush:php;toolbar:false;">SET time_zone = ' 00:00'; CREATE TABLE timestamp_n_datetime ( ID INT、 時間 DATETIME、 avg_time DATETIME ); INSERT INTO timestamp_n_datetime(id,time,avg_time) VALUES("1","2023-01-03 10:12:13", NULL), ("1"、"2023-02-04 11:13:14"、NULL)、 ("2"、"2023-03-02 09:14:10"、NULL)、 ("2"、"2023-04-02 05:15:50"、NULL)、 ("1", "2023-06-10 02:04:10", NULL); <p>ID でグループ化された「time」列の平均を「avg_time」列に入力したいと考えています。たとえば、最初の行は「id」= 1 なので、「id」も 1 であるため、「avg_time」列は 1 行目、2 行目、5 行目の平均を取る必要があります。 </p> <p>この質問にはどう答えればよいでしょうか? </p> <p>編集: 明確にするために、すべての DATETIME 列をミリ秒に変換し、それらをすべて加算し、加算した数値で割ります。たとえば、id=2 の場合、ミリ秒に変換し、加算して 2 で割ると (「id」= 2 の行が 2 つあるため)、2023 年 3 月 17 日午後 5 時 45 分 00 秒の平均が得られます。この方法で平均値を求めたいと思います。 </p>
P粉460377540
P粉460377540

全員に返信(1)
P粉347804896

この UNIX_TIMESTAMP を使用して秒に変換し、FROM_UNIXTIME を使用して日時形式に戻します。これが平均を取得する方法です。

リーリー

平均値を入力する方法は次のとおりです:

リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート