Ondersteuning voor meerdere tabellen in Direct Discovery
U kunt Direct Discovery gebruiken om meer dan één tabel of weergave te laden met behulp van ANSI SQL join-functionaliteit.
In een enkel diagram moet alle metingen worden afgeleid van dezelfde logische tabel in Qlik Sense, maar dit kan een combinatie van meerdere tabellen uit de bron zijn die zijn gekoppeld via join-opdrachten. U kunt echter dimensies gebruiken die afkomstig zijn uit andere tabellen in hetzelfde diagram.
Zo kunt u bijvoorbeeld de tabellen koppelen die zijn geladen met Direct Discovery via een Where-clausule of een Join-clausule.
- Direct Discovery kan worden geïmplementeerd in een scenario in het geheugen met één feit en meerdere dimensies met grote gegevenssets.
- Direct Discovery kan worden gebruikt met meer dan één tabel die voldoet aan een of meer van de volgende criteria:
- De cardinaliteit van het sleutelveld in de join is laag.
De cardinaliteit van het sleutelveld in de join is hoog, DirectEnableSubquery is ingesteld op true en alle tabellen zijn samengevoegd met Direct Discovery.
Ga voor meer informatie naar Subquery's gebruiken met Direct Discovery.
- Direct Discovery is niet geschikt voor implementatie in een scenario met derde normaalvorm met alle tabellen in Direct Discovery-vorm.
Direct Discovery-tabellen koppelen met een Where-clausule
In dit voorbeeldscript laden we gegevens uit de database AW2012. De tabellen Product en ProductSubcategory zijn gekoppeld met een Where-clausule via het gemeenschappelijke veld 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-tabellen koppelen met Join On-clausules
U kunt ook Join On-clausules gebruiken om Direct Discovery-tabellen te koppelen. In deze voorbeeldopdracht voegen we de tabel SalesOrderHeader toe aan de tabel SalesOrderDetail via het veld SalesOrderID en voegen we tevens de tabel Customer toe aan de tabel SalesOrderHeader via het veld Customer ID.
In dit voorbeeld maken we metingen met behulp van dezelfde logische tabel, hetgeen betekent dat wij deze in hetzelfde diagram kunnen gebruiken. Zo kunt u bijvoorbeeld een diagram maken met SubTotal en OrderQty als metingen.