Query: olapR Query 构造
Query
用于构造“查询”对象。 集函数用于生成和修改查询轴和多维数据集名称。
用法
Query(validate = FALSE)
cube(qry)
cube(qry) <- cubeName
columns(qry)
columns(qry) <- axis
rows(qry)
rows(qry) <- axis
pages(qry)
pages(qry) <- axis
chapters(qry)
chapters(qry) <- axis
axis(qry, n)
axis(qry, n) <- axis
slicers(qry)
slicers(qry) <- axis
compose(qry)
is.Query(qry)
参数
validate
指定是否应在执行过程中验证查询的逻辑 (TRUE、FALSE、NA)
qry
Query
返回的“Query”类的对象
cubeName
指定要查询的多维数据集的名称的字符串
axis
指定轴的字符串向量。 请参阅以下示例。
n
一个整数,表示要设置的轴编号。 axis(qry, 1) == columns(qry)、axis(qry, 2) == pages(qry) 等。
详细信息
Query
是查询对象的构造函数。 集函数用于指定查询应返回的内容。 查询传递给 Execute2D
和 ExecuteMD
函数。 compose
采用查询对象并生成一个等效于 Execute 函数将生成并使用的 MDX 字符串。
值
Query
返回“Query”类型的对象。
cube
返回字符串。
columns
返回字符串矢量。
rows
返回字符串矢量。
pages
返回字符串矢量。
sections
返回字符串矢量。
axis
返回字符串矢量。
slicers
返回字符串矢量。
compose
返回字符串。
is.Query
返回布尔值。
备注
- 查询对象的功能没有纯 MDX 多。 如果查询 API 不足,请尝试将 MDX 查询字符串与某个 Execute 函数结合使用。
参考
请参阅 execute2D 或 executeMD 作为参考。
另请参阅
execute2D、executeMD、OlapConnection、explore
示例
qry <- Query(validate = TRUE)
cube(qry) <- "[Analysis Services Tutorial]"
columns(qry) <- c("[Measures].[Internet Sales Count]", "[Measures].[Internet Sales-Sales Amount]")
rows(qry) <- c("[Product].[Product Line].[Product Line].MEMBERS")
axis(qry, 3) <- c("[Date].[Calendar Quarter].MEMBERS")
slicers(qry) <- c("[Sales Territory].[Sales Territories].[Sales Territory Region].[Northwest]")
print(cube(qry)) #[Analysis Services Tutorial]
print(axis(qry, 2)) #c("[Product].[Product Line].[Product Line].MEMBERS")
print(compose(qry)) #SELECT {[Measures].[Internet Sales Count], [Measures].[Internet Sales-Sales Amount]} ON AXIS(0), {[Product].[Product Line].[Product Line].MEMBERS} ON AXIS(1), {[Date].[Calendar Quarter].MEMBERS} ON AXIS(2) FROM [Analysis Services Tutorial] WHERE {[Sales Territory].[Sales Territories].[Sales Territory Region].[Northwest]}