Direct Query
Оператор DIRECT QUERY обеспечивает доступ к таблицам через подключение
Syntax:
DIRECT QUERY DIMENSION fieldlist [MEASURE fieldlist] [DETAIL fieldlist] FROM tablelist
[WHERE where_clause]
Ключевые слова DIMENSION, MEASURE и DETAIL можно использовать в любом порядке.
Предложения ключевых слов DIMENSION и FROM требуются во всех операторах DIRECT QUERY. Ключевое слово FROM должно стоять после ключевого слова DIMENSION.
Поля, указанные сразу после ключевого слова DIMENSION, загружаются в память и могут использоваться для создания связей между данными в памяти и данными Direct Discovery.
С помощью ключевого слова MEASURE можно определить поля, которые QlikView будет распознавать на «уровне метаданных». Фактические данные поля «Мера» находятся только в базе данных во время процесса загрузки данных. Они извлекаются через прямое подключение с помощью выражений, используемых в диаграмме.
Обычно поля с дискретными значениями, которые используются в качестве измерений, загружаются с ключевым словом DIMENSION, тогда как числа, используемые только при агрегировании, должны быть выбраны с ключевым словом MEASURE.
Поля DETAIL обеспечивают информацию или подробности, такие как поля с комментариями, которые пользователь может отобразить в простой таблице, которую можно развернуть и просмотреть подробности. Поля DETAIL не могут использоваться в выражениях диаграммы.
Оператор DIRECT QUERY не зависит от источника данных для источников, поддерживающих
Синтаксис источника данных NATIVE можно использовать, если пользователь знает, какая база данных запрашивается, и хочет использовать специальные расширения для базы данных
- В качестве выражения поля в предложениях DIMENSION и MEASURE
- В качестве содержимого предложения WHERE
Examples:
DIMENSION Dim1, Dim2MEASURENATIVE ('X % Y') AS X_MOD_Y
DIMENSION Dim1, Dim2MEASURE X, YFROM TableNameWHERE NATIVE ('EMAIL MATCHES "\*.EDU"')
Arguments:
Аргумент | Описание |
---|---|
|
Список спецификаций поля, разделенных запятыми, fieldname {, fieldname}. Спецификация поля может быть именем поля. В этом случае такое же имя используется для имени столбца базы данных и имени поля QlikView. Также спецификация поля может быть «полем alias». В этом случае выражению базы данных или имени столбца задается имя поля QlikView. |
|
Список имен таблиц или видов в базе данных, из которых загружаются данные. Как правило, это просмотры, содержащие оператор JOIN, выполненный над базой данных. |
|
Здесь не приведено полное описание синтаксиса предложений базы данных WHERE, но большинство «реляционных выражений» NOT — это унарный оператор, в отличие от модификатора на определенные ключевые слова. Examples: WHERE x > 100 AND "Region Code" IN ('south', 'west')
WHERE Code IS NOT NULL and Code LIKE '%prospect'
WHERE NOT X in (1,2,3)
Последний пример не может быть записан как: WHERE X NOT in (1,2,3)
|
Example:
В этом примере используется таблица базы данных с именем
Поля
Например, оператор SELECT:
SalesOrderID,
RevisionNumber,
OrderDate,
SubTotal,
TaxAmt
FROM MyDB.Sales.SalesOrderHeader;
можно заменить следующим оператором DIRECT QUERY:
DIMENSION
SalesOrderID,
RevisionNumber
MEASURE
SubTotal,
TaxAmt
DETAIL
OrderDate
FROM MyDB.Sales.SalesOrderHeader;