Запрос: olapR Compry Construction

Query строит объект «Запрос». Функции множества используются для построения и изменения осей запроса и имени куба.

Usage

  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)

Arguments

validate

Логический (TRUE, FALSE, NA), указывающий, должен ли запрос проверяться во время выполнения

qry

Объект класса «Query», возвращаемый Query

cubeName

Строка, указывающая имя куба для запроса

axis

Вектор строк, указывающий ось. См. пример ниже.

n

Целое число, обозначающее число оси, которое нужно установить. axis(qry, 1) == столбцы(qry), axis(qry, 2) == страницы(qry) и т.д.

Сведения

Query является конструктором для объекта запроса. Функции множества используются для указания того, что должен вернуть запрос. Запросы передаются функциям Execute2D and ExecuteMD . compose берёт объект запроса и генерирует MDX-строку, эквивалентную той, которую генерируют и используют функции Execute.

Ценность

Query возвращает объект типа «Query». cube возвращает строку. columns возвращает вектор строк. rows возвращает вектор строк. pages возвращает вектор строк. sections возвращает вектор строк. axis возвращает вектор строк. slicers возвращает вектор строк. compose возвращает строку. is.Query возвращает логическое значение.

Примечания

  • Объект запроса не так мощен, как чистый MDX. Если API запроса недостаточен, попробуйте использовать строку MDX Query с одной из функций Execute.

Ссылки

См. execute2D или executeMD для ссылок.

Примеры


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