アクセスで次のことを完了するにはどうすればよいですか
SELECT MONTH([Date]) as monthNum,
AVG(CASE WHEN loc ='1' THEN [Count] END) AS locAVG,
AVG(CASE WHEN dept ='50' THEN [Count] END) AS deptAVG,
FROM [table]
GROUP BY MONTH([Date])
IIF
この場合に使用できます。
AVG( IIF(loc = "1", 1, 0) ) AS locAVG,
[Count]
がフィールドの名前であると仮定すると、 の行locAVG
の平均を求める場合、関数が Null 値を無視するという事実を利用できます。そのため、式を使用していつフィードし、それ以外の場合は Null にフィードします。[Count]
loc ='1'
AVG()
IIf()
[Count]
AVG()
loc ='1'
についても同様のIIf()
表現を使用しdeptAVG
ます。
SELECT MONTH([Date]) as monthNum,
AVG(IIf(loc ='1', [Count], Null)) AS locAVG,
AVG(IIf(dept ='50', [Count], Null)) AS deptAVG,
FROM [table]
GROUP BY MONTH([Date]);