我有5年的风数据,每10分钟记录一次。我必须得到每个月的一些列的平均值,最小值和最大值,我所做的是
SELECT avg(S10_AVG), MIN(S10_AVG), max(S10_AVG)
FROM CP
WHERE strftime('%Y', FECHA)='2008' and strftime('%m', FECHA)='01'
是否可以在不执行60个不同查询的情况下为每个月和每年制作此内容?感谢
答案 0 :(得分:1)
是的,您可以使用GROUP BY:
SELECT strftime('%Y', FECHA), strftime('%m', FECHA), avg(S10_AVG), MIN(S10_AVG), max(S10_AVG)
FROM @WindData
GROUP BY strftime('%Y', FECHA), strftime('%m', FECHA)
答案 1 :(得分:0)
SELECT
STRFTIME('%Y', fecha) AS year,
STRFTIME('%m', fecha) AS month,
AVG(s10_avg) AS avg,
MIN(s10_avg) AS min,
MAX(s10_avg) AS max
FROM cp
GROUP BY STRFTIME('%Y', fecha), STRFTIME('%m', fecha)