分享方式:


查詢: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 函數可用來指定查詢應該傳回的內容。 查詢會傳遞至 Execute2DExecuteMD 函數。 compose 會採用 Query 物件,並產生相當於 Execute 函數會產生和使用的 MDX 字串。

Query 會傳回類型為 "Query" 的物件。 cube 會傳回字串。 columns 會傳回字串向量。 rows 會傳回字串向量。 pages 會傳回字串向量。 sections 會傳回字串向量。 axis 會傳回字串向量。 slicers 會傳回字串向量。 compose 會傳回字串。 is.Query 會傳回布林值。

備註

  • Query 物件不像純 MDX 一樣強大。 如果查詢 API 不足,請嘗試使用 MDX 查詢字串搭配其中一個 Execute 函數。

參考資料

如需參考,請參閱 execute2DexecuteMD

另請參閱

execute2DexecuteMDOlapConnectionexplore

範例


 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]}