Перейти к основному содержимому

Поддержка нескольких таблиц в Direct Discovery

Можно использовать Direct Discovery для загрузки нескольких таблиц или для просмотра с помощью функции объединения ANSI SQL. В одной диаграмме все меры должны быть из одной логической таблицы в QlikView, но она может состоять из нескольких таблиц из источника, связанных с помощью операторов join. Однако в одной диаграмме можно использовать измерения из разных таблиц.

Например, можно связать таблицы, загруженные в Direct Discovery с помощью предложения Where или Join.

  • Можно выполнить развертывание Direct Discovery в одной таблице фактов или многомерном сценарии в памяти с большими наборами данных.
  • Приложение Direct Discovery можно использовать с несколькими таблицами, которые соответствуют одному из следующих критериев.
  • Direct Discovery не подходит для развертывания в сценарии третьей нормальной формы со всеми таблицами в форме Direct Discovery.

Связывание таблиц Direct Discovery с помощью предложения Where

В этом примере скрипта данные загружаются из базы данных AW2012. Таблицы Product и ProductSubcategory связываются с помощью предложения Where, используя общее поле ProductSubCategoryID.

Product_Join: DIRECT QUERY DIMENSION [ProductID], [AW2012].[Production].[Product].[Name] as [Product Name], [AW2012].[Production].[ProductSubcategory].[Name] as [Sub Category Name], Color, [AW2012].[Production].[Product].ProductSubcategoryID as [SubcategoryID] MEASURE [ListPrice] FROM [AW2012].[Production].[Product], [AW2012].[Production].[ProductSubcategory] WHERE [AW2012].[Production].[Product].ProductSubcategoryID = [AW2012].[Production].[ProductSubcategory].ProductSubcategoryID ;

Связывание таблиц Direct Discovery с помощью предложений Join On

Также можно использовать предложения Join On для связи таблиц Direct Discovery. В этом примере оператора выполняется присоединение таблицы SalesOrderHeader к таблице SalesOrderDetail с помощью поля SalesOrderID, а также присоединение таблицы Customer к таблице SalesOrderHeader с помощью поля Customer ID.

В этом примере мы создаем меры из одной логической таблицы, что означает, что их можно будет использовать в одной диаграмме. Например, можно создать диаграмму, используя в качестве мер значения SubTotal и OrderQty.

Sales_Order_Header_Join: DIRECT QUERY DIMENSION AW2012.Sales.Customer.CustomerID as CustomerID, AW2012.Sales.SalesOrderHeader.SalesPersonID as SalesPersonID, AW2012.Sales.SalesOrderHeader.SalesOrderID as SalesOrderID, ProductID, AW2012.Sales.Customer.TerritoryID as TerritoryID, OrderDate, NATIVE('month([OrderDate])') as OrderMonth, NATIVE('year([OrderDate])') as OrderYear MEASURE SubTotal, TaxAmt, TotalDue, OrderQty DETAIL DueDate, ShipDate, CreditCardApprovalCode, PersonID, StoreID, AccountNumber, rowguid, ModifiedDate FROM AW2012.Sales.SalesOrderDetail JOIN AW2012.Sales.SalesOrderHeader ON (AW2012.Sales.SalesOrderDetail.SalesOrderID = AW2012.Sales.SalesOrderHeader.SalesOrderID) JOIN AW2012.Sales.Customer ON(AW2012.Sales.Customer.CustomerID = AW2012.Sales.SalesOrderHeader.CustomerID);
Примечание: Невозможно обращаться к таблицам по псевдониму в предложении FROM. Необходимо использовать полное имя таблицы.

Join the Analytics Modernization Program

Modernize by leveraging your QlikView investment to begin using Qlik Sense on the Cloud.

Want to know more?
Remove banner from view