Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ssas 计算MDX中单元格中的事实数_Ssas_Mdx_Mdx Query - Fatal编程技术网

Ssas 计算MDX中单元格中的事实数

Ssas 计算MDX中单元格中的事实数,ssas,mdx,mdx-query,Ssas,Mdx,Mdx Query,这是一个简单的二维模式和一个带有度量的事实 CREATE TABLE DimThingType ( ThingTypeID int NOT NULL PRIMARY KEY, ThingTypeDescription varchar(8) NOT NULL ) CREATE TABLE DimThing ( ThingID int NOT NULL PRIMARY KEY, ThingName varchar(8

这是一个简单的二维模式和一个带有度量的事实

CREATE TABLE DimThingType (
    ThingTypeID          int        NOT NULL PRIMARY KEY,
    ThingTypeDescription varchar(8) NOT NULL
)

CREATE TABLE DimThing (
    ThingID   int        NOT NULL PRIMARY KEY,
    ThingName varchar(8) NOT NULL
)

CREATE FactFacts (
    FactID      int NOT NULL PRIMARY KEY,
    ThingID     int NOT NULL,
    ThingTypeID int NOT NULL,
    Turnips     int NOT NULL
)
现在在MDX中,我们可以对每种类型的萝卜数量求和

现在,如果在这个度量值组中,我创建了一个名为
[Count of Facts]
的新度量值,其属性
Source.[Binding Type]
设置为
[Row Binding]
并且
AggregateFunction
设置为
Count
,那么我还可以计算每种事物类型的事物数量

我真的需要添加这个新的度量吗? 数字是在计算结果单元格中的值时使用的事实数,因此我不能通过查询获得吗?(如果我们在SQL中分组,那么它将是
COUNT(*)


我绝对没办法让任何东西工作

是的,您需要添加一个新的度量值(尽管他们的度量值也是可选的)。多维数据集在处理时将事实值存储在N维单元中。因此,在查询时,您只能检索存储的内容。与sql不同,多维数据集在运行时不会求和。它将只获取该单元格中的值

有关如何解析查询的详细信息,请阅读

SELECT 
    NON EMPTY { [Measures].[Trunips] } ON COLUMNS, 
    NON EMPTY { ([ThingType].MEMBERS) } ON ROWS  FROM [Things]
MDX查询在N维平面的地址中解析。在上面的例子中,你有两个维度,所以它是一个二维平面的地址

现在您已经忽略了一个维度,而对于第二个维度,您已经使用了其所有可能的值

所以地址是
({d1:dn},{All},{Turnips})
。读作
“未分组列出的第一维度的所有值”,“分组的第二维度的所有值”,对于该单元格返回“测量芜菁”。现在,此单元格上没有计数度量值。

是的,您需要添加一个新度量值(尽管它们也是可选的)。多维数据集在处理时将事实值存储在N维单元中。因此,在查询时,您只能检索存储的内容。与sql不同,多维数据集在运行时不会求和。它将只获取该单元格中的值

有关如何解析查询的详细信息,请阅读

SELECT 
    NON EMPTY { [Measures].[Trunips] } ON COLUMNS, 
    NON EMPTY { ([ThingType].MEMBERS) } ON ROWS  FROM [Things]
MDX查询在N维平面的地址中解析。在上面的例子中,你有两个维度,所以它是一个二维平面的地址

现在您已经忽略了一个维度,而对于第二个维度,您已经使用了其所有可能的值

所以地址是
({d1:dn},{All},{Turnips})
。读作
“未分组列出的第一维度的所有值”,“分组的第二维度的所有值”,对于该单元格返回“测量芜菁”。现在这个牢房里没有计数单位。

@Richard Barraclough有用吗?@Richard Barraclough有用吗?
SELECT 
    NON EMPTY { [Measures].[Trunips] } ON COLUMNS, 
    NON EMPTY { ([ThingType].MEMBERS) } ON ROWS  FROM [Things]