Comment obtenir la moyenne de la colonne DATETIME dans MySQL tout en regroupant par d'autres colonnes
P粉460377540
P粉460377540 2023-09-05 11:46:21
0
1
382

Je crée et remplis une table MySQL à l'aide de la requête suivante :

SET time_zone = '+00:00'; CREATE TABLE timestamp_n_datetime ( identifiant INT, heure DATEHEURE, avg_time DATETIME ); INSÉRER DANS timestamp_n_datetime(id,time,avg_time) VALEURS ("1", "03/01/2023 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);

Je souhaite remplir la colonne "avg_time" avec la moyenne de la colonne "time" regroupée par identifiant. Par exemple, la première ligne a « id » = 1, donc la colonne « avg_time » doit prendre la moyenne des première, deuxième et cinquième lignes puisque leur « id » est également 1.

Comment dois-je répondre à cette question ?

Modifier : pour clarifier, je souhaite convertir toutes les colonnes DATETIME en millisecondes, les additionner toutes, puis les diviser par le nombre ajouté. Par exemple, pour id=2, les convertir en millisecondes, les additionner puis les diviser par 2 (puisqu'il y a deux lignes avec « id » = 2) donne la moyenne du 17 mars 2023 à 17h45. Je veux obtenir la moyenne de cette façon.

P粉460377540
P粉460377540

répondre à tous (1)
P粉347804896

Utilisez ceciUNIX_TIMESTAMP转换为秒,然后使用FROM_UNIXTIMEpour le remettre au format datetime, voici comment obtenir la moyenne :

select id, FROM_UNIXTIME(AVG(UNIX_TIMESTAMP(`time`))) from timestamp_n_datetime group by id;

Voici comment remplir la moyenne :

update timestamp_n_datetime td inner join ( select id, FROM_UNIXTIME(AVG(UNIX_TIMESTAMP(`time`))) as average from timestamp_n_datetime group by id ) as s on s.id = td.id set avg_time = s.average;
    Derniers téléchargements
    Plus>
    effets Web
    Code source du site Web
    Matériel du site Web
    Modèle frontal
    À propos de nous Clause de non-responsabilité Sitemap
    Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!