Anpassade SQL-exempel för Direct Query
Följande exempel visar några av alternativen när du använder anpassad SQL för Direct Query.
Exempel: Lägga till anpassade SQL-definitioner i Direct Query-modellen
I det här exemplet läggs anpassade SQL-definitioner för tabellerna C, R, N till i datamodellen i Direct Query-applikationen tillsammans med två relationer mellan tabeller. Funktionen Coalesce används för att kontrollera om ett fältvärde för N_NATIONKEY är lika med värdet för C_NATIONKEY, eller om båda är lika med null.
Coalesce är det rekommenderade sättet att inkludera en kontroll för att se om ett fältvärde är lika med null. Mer information finns i coalesceSkript- och diagramfunktion.
Exempel: Lägga till tabeller med anpassad SQL till en datamodell som skapats med Hanterare för datamodell
I det här exemplet konstrueras först Direct Query-datamodellen med innehållet i objektet DirectQueryModel.main, som skapades med Hanterare för datamodell. Därefter läggs ytterligare en tabell, C med fälten C_CUSTKEY och C_ACCTBAL, till i datamodellen. En relation skapas mellan fältet O_CUSTKEY i ORDERS och fältet C_CUSTKEY i C.
Exempel: Konstruera en Direct Query-datamodell med en anpassad SQL-tabell
I det här exemplet konstrueras Direct Query-datamodellen med en anpassad SQL-tabell, C, med de omdöpta fälten C_KEY och C_BAL. Därefter lägger IMPORT LIVE till datamodellen som skapats i Hanterare för datamodell från DirectQueryModel.main. Denna datamodell innehåller tabellen Orders och har en befintlig relation mellan Orders och Customer i den modellen. Sedan tas den befintliga relationen mellan Customers och Orders bort och en ny relation definieras mellan Orders och C.
Exempel: Konstruera en datamodell som innehåller variabler
I det här exemplet definieras variabeln MULT först med värdet 100. Sedan tillämpas den som en multiplikator på summan av PS_Supplycost för att beräkna fältet S.
Exempel: Konstruera en datamodell med Qlik-uttryck
I det här exemplet används både variabler och uttryck för att bygga datamodellen. I tabellen ORDERS_AGGREGATIONS används uttryck för att definiera värdena i ORDERS_GROUP_TOTAL_PRICE. Närhelst val görs i ett ark som skulle påverka värdena i ORDERS_GROUP_TOTAL_PRICE, kommer uttrycket att utvärderas på nytt på de data som returneras av frågan till databasen.
Exempel: Använda funktioner i anpassade SQL-uttryck
Följande anpassade SQL-sats demonstrerar en enkel användning av ett $(=…)-motoruttryck som expanderas när det körs i den anpassade SQL-koden. Det här uttrycket hämtar rader från en fjärrdatabas beroende på användarinformationen för applikationssessionen. När ett diagram, en fråga eller ett val utförs av en användare av en Direct Query-applikationssession med e-postadressen 'user1@qlik.com' filtreras den dynamiska hämtningen av datarader från fjärr-SQL-databasen så att den endast matchar de rader där fältet C_NAME innehåller värdet 'Customer#000000007'. Annars, om e-postadressen för Direct Query-applikationens sessionsanvändare inte är 'user1@qlik.com', kommer endast de rader där fältet C_NAME innehåller värdet 'Customer#000000009' att hämtas och visas.