access/sql分类查询
access/sql分类查询
统计数据,按name分组统计num的和,对name分组后按class分组统计求和
sql 语句
SELECT name,
sum(num) as sum,
SUM(case class WHEN 1 THEN num ELSE 0 END) as ph1,
SUM(case class WHEN 3 THEN num ELSE 0 END) as ph3
from testmj
GROUP BY name
结果如下
access中不支持case when ,看了一会才发现,用使用iif()函数。
IIf 函数语法的参数说明:
expr 必需;要计算其值的表达式。
truepart 必需;expr为True时返回的值或表达式。
falsepart 必需;expr为False时返回的值或表达式。
只需将SUM(case class WHEN 1 THEN num ELSE 0 END)
改为SUM(IIF(class=1,num,0))
即可。
感觉在统计销售额之类的地方会有用到。