假设有一个名为temperature的表,包含日期和温度两列,可以使用以下SQL语句计算平均夜间和日间温度:

SELECT AVG(CASE WHEN HOUR(date) BETWEEN 6 AND 17 THEN temperature ELSE NULL END) AS avg_day_temperature,
       AVG(CASE WHEN HOUR(date) NOT BETWEEN 6 AND 17 THEN temperature ELSE NULL END) AS avg_night_temperature
FROM temperature;

解释:

  • 使用CASE语句将日期时间按照是否在白天(6点到17点)进行分类
  • 使用AVG函数计算每个分类的平均温度
  • 使用SELECT语句同时输出两个结果

注意事项:

  • HOUR函数用于提取日期时间的小时部分
  • 以上做法默认日期时间的时区是本地时区,如果需要转换时区可以使用相关函数
sql计算平均夜间和日间温度日间是从早上6点到晚上6点夜间是从晚上6点到早上6点

原文地址: http://www.cveoy.top/t/topic/bbfV 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录