微软Access 2016
目标,基于子参数的标签记录;例子:
Cat1 Cat2
A 1
A 2
A 5
B 3
B 4
B 1
C 3
C 2
C 5
目标,在“分组依据”中检查是否存在3,并标记“ FBWT”;结果:
Cat1 Cat2
A Other
B FBWT
C FBWT
我曾考虑过基于Cat1创建一个字典,该字典根据对Cat1 / 2对的迭代来更新值,然后打印“ Other”或“ FBWT”,但这将在数百万条记录上运行,所以我理想地在寻找一种函数来我可以在运行Cat1上的groupby的查询中运行。
使用条件聚合:
select cat1,
min(iif(cat2 = 3, 'FBWT' 'Other'))
from t
group by cat1;
这MIN()
只是一个捷径。字符串应为'FBWT'
< 'Other'
。
一种更正式的方式可以更明确地做到这一点:
select cat1,
iif(sum(iif(cat2 = 3, 1, 0) > 0, 'FBWT', 'Other')
from t
group by cat1;
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句