MS Access SQL 范围和平均值
Posted
技术标签:
【中文标题】MS Access SQL 范围和平均值【英文标题】:MS Access SQL Range and Average 【发布时间】:2017-06-11 09:04:24 【问题描述】:[Date Time] 和 [MFR g/10min] 是 [In process analysis result] 表中的字段。我应该找到“每天 [MFR g/10min] 的范围(最大-最小)”和“[MFR g/10min] 的平均值”。 一天定义为“前一天”18:00:00 到“今天”17:59:00。
SELECT [In process analysis result].[Date Time], Format([In process analysis result].[Date Time],"dd/mmm/yy") AS [Extracted Date], Format([In process analysis result].[Date Time],"hh:nn:ss") AS [Extracted Time], IIf([Extracted Time]<"18:00:00",DateAdd("d",-1,[Extracted Date]),[Extracted Date]) AS [New Date], [In process analysis result].[MFR g/10min]
FROM [In process analysis result];
我提取了[提取日期]和[提取时间]。以【提取时间】小于18:00:00为条件,视为前一天。最终结果是[新日期]。
但是,从这个查询中,我不知道如何获得按 [New日期]。我需要一些帮助和指导。感谢是否有人可以帮助我。 谢谢。
【问题讨论】:
【参考方案1】:您在正确的轨道上,但您可以通过取 DateValue([Date Time])
并在 Hour([Date Time])
为 18 或更大时添加 1 天来简化日期计算。然后,将该查询用作执行实际计算的查询中的子查询:
SELECT
EffectiveDate,
MAX([MFR g/10min]) - MIN([MFR g/10min]) AS DailyRange,
AVG([MFR g/10min]) AS DailyAverage
FROM
(
SELECT
DateAdd("d", IIf(Hour([Date Time]) < 18, 0, 1), DateValue([Date Time])) AS EffectiveDate,
[MFR g/10min]
FROM [In process analysis result]
)
GROUP BY EffectiveDate
【讨论】:
以上是关于MS Access SQL 范围和平均值的主要内容,如果未能解决你的问题,请参考以下文章