查詢:olapR 查詢建構
Query
會建構 "Query" 物件。 Set 函數可用來建置與修改查詢軸和 Cube 名稱。
使用方式
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
字串,指定查詢的 Cube 名稱
axis
字串向量,指定座標軸。 請參閱以下的範例。
n
整數,代表要設定的座標軸數量。 axis(qry, 1) == columns(qry), axis(qry, 2) == pages(qry), etc.
詳細資料
Query
是 Query 物件的建構函式。 Set 函數可用來指定查詢應該傳回的內容。 查詢會傳遞至 Execute2D
和 ExecuteMD
函數。 compose
會採用 Query 物件,並產生相當於 Execute 函數會產生和使用的 MDX 字串。
值
Query
會傳回類型為 "Query" 的物件。
cube
會傳回字串。
columns
會傳回字串向量。
rows
會傳回字串向量。
pages
會傳回字串向量。
sections
會傳回字串向量。
axis
會傳回字串向量。
slicers
會傳回字串向量。
compose
會傳回字串。
is.Query
會傳回布林值。
備註
- 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]}