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

実行の間に Query を検証するかどうかを指定する論理値 (TRUE、FALSE、NA)

qry

Query によって返される "Query" クラスのオブジェクト

cubeName

クエリするキューブの名前を指定する文字列

axis

軸を指定する文字列のベクトル。 以下の例を参照してください。

n

設定する軸の番号を表す整数。 axis(qry, 1) == columns(qry)、axis(qry, 2) == pages(qry) など。

詳細

Query は、Query オブジェクトのコンストラクターです。 Query によって返されるものを指定するには、セット関数が使用されます。 クエリは、Execute2D および ExecuteMD 関数に渡されます。 compose は、Query オブジェクトを受け取り、Execute 関数によって生成および使用されるものと同等の MDX 文字列を生成します。

Query は、"Query" 型のオブジェクトを返します。 cube は、文字列を返します。 columns は、文字列のベクトルを返します。 rows は、文字列のベクトルを返します。 pages は、文字列のベクトルを返します。 sections は、文字列のベクトルを返します。 axis は、文字列のベクトルを返します。 slicers は、文字列のベクトルを返します。 compose は、文字列を返します。 is.Query は、ブール値を返します。

メモ

  • Query オブジェクトは、純粋な MDX ほど強力ではありません。 Query API が十分でない場合は、MDX クエリ文字列と Execute 関数のいずれかを使用してみてください。

リファレンス

リファレンスについては、「execute2D」または「executeMD」を参照してください。

こちらもご覧ください

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