如何在SSAS中进行命名计算在执行时返回最小日期

时间:2013-09-16 23:13:03

标签: sql sql-server-2008-r2 sql-server-2012 ssas sql-server-2012-datatools

我建了一个立方体;而且我无法从中获得正确的结果。这是我面临的问题。

我在DSV中有一个表格,我在其中添加了一个命名的计算列。此列依赖于另外两列: 客户ID和日期。 此计算列必须显示与客户相关的最短日期。这是我正在使用的查询:

select customerID, min(date) mindate  from tableA where group by customerID

如何为命名计算构建查询以获取客户的最短日期?

customerID  mindate
656309  6/7/2013
10348   5/17/2013
687736  1/4/2013
130943  10/12/2012
657537  10/19/2012
428661  3/8/2013
9120    5/10/2013
5250    4/5/2013
681012  10/5/2012
37169   1/18/2013

1 个答案:

答案 0 :(得分:0)

您可以尝试以下表达式

min(date) over(partition by customerID)

这可能在DSV的计算列中有效,也可能无效。如果它不能用作计算列,则可以在命名查询中使用此表达式。要执行此操作,请右键单击DSV中的表,然后选择“替换表/使用命名查询”。这显示了一个SQL select语句。在这里,你可以添加上面的表达式,它应该适用于任何情况。