Maison > base de données > tutoriel mysql > Comment trouver la valeur moyenne d'une période de temps dans MySQL

Comment trouver la valeur moyenne d'une période de temps dans MySQL

coldplay.xixi
Libérer: 2023-01-04 09:37:29
original
4992 Les gens l'ont consulté

Méthode MySQL pour trouver la valeur moyenne d'une période de temps : Tout d'abord, divisez l'instruction sql dans la procédure stockée puis, en fonction de l'heure de début et de l'heure de fin, la boucle while ajoute une période de temps à chaque fois ; ; enfin, faites la moyenne de la période.

Comment trouver la valeur moyenne d'une période de temps dans MySQL

L'environnement d'exploitation de ce tutoriel : système Windows 7, mysql version 8.0.22, ordinateur Dell G3.

Méthode MySQL pour trouver la valeur moyenne d'une période de temps :

Idée : Dans la procédure stockée, épissez les instructions SQL. En fonction de l'heure de début et de l'heure de fin, la boucle while ajoute une période de temps à chaque fois.

DROP PROCEDURE IF EXISTS `get_avg`;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `get_avg`(in iStartTime datetime, in iEndTime datetime)
BEGIN
declare vSql varchar(10240) default '';
declare vNextTime datetime;
while(iStartTime < iEndTime) do
-- 每次加一个小时
set vNextTime = date_add(iStartTime,interval 3600 second);
-- 单引号是特殊字符,要表示单引号,使用 &#39;&#39; 进行转义
set vSql = concat(vSql,&#39;union select 100, avg(`value`) from t1 where time between &#39;&#39;&#39;,iStartTime,&#39;&#39;&#39; and &#39;&#39;&#39;, vNextTime,&#39;&#39;&#39; &#39;);
set iStartTime = vNextTime;
end while;
set vSql = substring(vSql,7);
-- 看看拼接的字符串是否正确
-- select vSql;
set @vSql = vSql;
prepare stmt from @vSql;
execute stmt;
deallocate prepare stmt;
END
;;
DELIMITER ;
Copier après la connexion

Recommandations gratuites associées : Cours vidéo de programmation

Autres recommandations d'apprentissage gratuites associées : Tutoriel MySQL ( Vidéo)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal