我们目前有一个查询,显示总数量或商店位置和部门之间的销售额的值,我将销售数量汇总度量与位置相交,结果很好。
当我们尝试按总数量> 500进行过滤时,我只会看到按地点价值评估的数量总和,而不是按地点和部门分组。
HAVING似乎不受支持,如果我在底部包括一个where过滤器,则存在同一家庭/成员被多次使用的问题,这是不允许的。
SELECT
{HEAD([dim_productfamily.hier_productfamily].[lvl_department].Members, 5)}
ON ROWS,
FILTER
(
{HEAD([dim_locations.hier_locations].[lvl_location].Members, 5) * [Measures].[total_qty]},
[Measures].[total_qty] > 500
)
ON COLUMNS
FROM
[sales_daily]
WHERE
{[dim_date.hier_date].[lvl_date].[20170521] : [dim_date.hier_date].[lvl_date].[20170730] }
上面的查询返回的很好,但是我得到的测试值只能与位置求和(total_qty)进行真正的比较。
针对不同分组进行编辑
我尝试使用以下查询,这似乎有效。我认为在这种情况下,我们呈现表格的方式是不正确的,因为输出似乎确实可以正常工作。
SELECT
FILTER
(
{HEAD([dim_productfamily.hier_productfamily].[lvl_department].Members, 5) * HEAD([dim_locations.hier_locations].[lvl_location].Members, 5)},
[Measures].[total_qty] > 26
)
ON ROWS,
[Measures].[total_qty]
ON COLUMNS
FROM
[sales_daily]
WHERE
{[dim_date.hier_date].[lvl_date].[20170521] : [dim_date.hier_date].[lvl_date].[20170730] }
这是您的想法吗?
答案 0 :(得分:1)
问题在于,在您的过滤器中,您实际上尚未按位置和部门进行分组。您仅按位置分组。一个简单的解决方法是将位置和产品都放在同一根轴上,而将度量值放在相反的轴上。然后将其过滤。会的。
答案 1 :(得分:0)
再次查看问题,您可以按照以下方式查询它。这将使您可以使用原始分组。
WITH
MEMBER [Measures].[Data Type3] AS ([Geography].[Country].CurrentMember,[Product].[Product].CurrentMember,[Measures].[Reseller Sales Amount])
SELECT
FILTER
(
{[Product].[Product].Members}
,[Measures].[Reseller Sales Amount] > 2000
)
ON rows,
FILTER
(
([Geography].[Country].members, {[Measures].[Reseller Sales Amount]
,[Measures].[Data Type3]}),
[Measures].[Reseller Sales Amount] > 2000
)
ON columns
FROM
[Adventure Works]