我有一个查询来拉动漏斗的点击率,如果用户点击一个页面,它记录为“1”,否则为 NULL -
SELECT datestamp
,COUNT(visits) as Visits
,count([QE001]) as firstcount
,count([QE002]) as secondcount
,count([QE004]) as thirdcount
,count([QE006]) as finalcount
,user_type
,user_loc
FROM
dbname.dbo.loggingtable
GROUP BY user_type, user_loc
我想为每个比率设置一列,例如 firstcount/Visits、secondcount/firstcount 等以及总数(finalcount/Visits)。
我知道这可以做到
- 通过添加“计算字段”在 Excel 数据透视表中
- 在 SQL 中通过分组
在 PowerPivot 中通过添加计算列,例如
=IFERROR(QueryName[finalcount]/QueryName[Visits],0)
但我需要给报告消费者一个选项,只用 user_type 或只用 user_loc 等进行切片,excel 会倾向于添加比例,这不起作用 b/c
SUM(A/B) != SUM(A)/SUM(B)
在 DAX/MDX/PowerPivot 中是否有一种方法可以添加计算列/度量,以便对于任何用户定义的数据子集(日期范围、用户类型、位置等)?