Zu Hauptinhalt springen Zu ergänzendem Inhalt springen

Unterstützung mehrerer Tabellen in Direkterkenntnis

Sie können Direkterkenntnis verwenden, um mehr als eine Tabelle zu laden oder mit der Verknüpfungsfunktion von ANSI SQL anzuzeigen. In einer einzelnen Tabelle müssen alle Kennzahlen aus der gleichen internen Tabelle in QlikView abgeleitet sein, aber diese kann eine Kombination mehrerer, über Verknüpfungsbefehle verbundener Tabellen aus einer Quelle sein. Sie können jedoch aus anderen Tabellen bezogene Dimensionen im gleichen Diagramm verwenden.

Zum Beispiel können Sie die mit Direkterkenntnis durch eine Where- oder Join-Bedingung geladenen Tabellen verbinden.

  • Direkterkenntnis kann in einem einzelnen Einzelwert/Mehrfachdimension-In-Memory-Szenario mit großen Datensätzen implementiert werden.
  • Direkterkenntnis kann mit mehr als einer Tabelle verwendet werden, wenn eines der folgenden Kriterien erfüllt ist:
    • Die Kardinalität des Schlüsselfelds im Join ist niedrig.
    • Die Kardinalität des Schlüsselfelds im Join ist hoch, DirectEnableSubquery ist auf "true" gesetzt und alle Tabellen wurden mit Direkterkenntnis zusammengeführt.

      Verwenden von Unterabfragen in Direkterkenntnis

  • Direkterkenntnis ist nicht geeignet für die Implementierung in einem Dritte-Normalform-Szenario, wenn alle Tabellen in der Direkterkenntnis-Form vorliegen.

Verbinden von Direkterkenntnis-Tabellen mit einer Where-Bedingung

In diesem Beispielskript laden wir Daten aus der Datenbank AW2012. Die Tabellen Product und ProductSubcategory werden mit einer Where-Bedingung mithilfe des gemeinsamen Felds ProductSubCategoryID verbunden.

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 ;

Verbinden von Direkterkenntnis-Tabellen mit Join On-Bedingungen

Sie können auch Join On-Bedingungen zum Verbinden von Direkterkenntnis-Tabellen verwenden. In diesem Beispielbefehl verknüpfen wir die Tabelle SalesOrderHeader mit der Tabelle SalesOrderDetail über das Feld SalesOrderID. Ebenso verknüpfen wir die Tabelle Customer mit der Tabelle SalesOrderHeader über das Feld Customer ID.

In diesem Beispiel erstellen wir Kennzahlen aus der gleichen internen Tabelle, was bedeutet, wir können sie im gleichen Diagramm verwenden. Zum Beispiel können Sie ein Diagramm mit SubTotal und OrderQty als Kennzahlen erstellen.

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);
InformationshinweisEs ist nicht möglich, in der FROM-Bedingung einen Alias als Tabellenverweis zu verwenden. Sie müssen den vollständigen Tabellennamen angeben.

Hat diese Seite Ihnen geholfen?

Wenn Sie Probleme mit dieser Seite oder ihren Inhalten feststellen – einen Tippfehler, einen fehlenden Schritt oder einen technischen Fehler –, teilen Sie uns bitte mit, wie wir uns verbessern können!

Nehmen Sie am Analyse-Modernisierungsprogramm teil

Remove banner from view

Modernisieren Sie mit dem Analyse-Modernisierungsprogramm, ohne Ihre wertvollen QlikView-Apps zu gefährden. Klicken Sie hier für weitere Informationen oder kontaktieren Sie uns: ampquestions@qlik.com