Direct Query
Met de DIRECT QUERY-opdracht kunt u toegang verkrijgen via een
Syntax:
DIRECT QUERY DIMENSION fieldlist [MEASURE fieldlist] [DETAIL fieldlist] FROM tablelist
[WHERE where_clause]
De trefwoorden DIMENSION, MEASURE en DETAIL kunnen in willekeurige volgorde worden gebruikt.
De trefwoordclausules DIMENSION en FROM zijn vereist in alle DIRECT QUERY-opdrachten. Het trefwoord FROM moet na het trefwoord DIMENSION komen.
De velden die zijn opgegeven direct na het trefwoord DIMENSION worden in het geheugen geladen om associaties tot stand te brengen tussen gegevens in het geheugen en Direct Discovery-gegevens.
Met het trefwoord MEASURE kunt u velden definiëren waarvan QlikView zich bewust is op “metaniveau”. De feitelijke gegevens van een metingsveld bevinden zich alleen tijdens het laden van de gegevens in de database en worden op ad hoc basis opgehaald via de grafiekuitdrukkingen die worden gebruikt in een grafiek.
Gewoonlijk kunnen velden met discrete waarden die zullen worden gebruikt als dimensies het beste worden geladen met het trefwoord DIMENSION, terwijl getallen die zullen worden gebruikt in aggregaties uitsluitend zouden meten worden geselecteerd met het trefwoord MEASURE.
Velden van het type DETAIL bieden informatie of details, zoals commentaarvelden, die een gebruiker wellicht wil weergeven in een tabelvak waarbij wordt geanalyseerd op detailniveau. Velden van het type DETAIL kunnen niet worden gebruikt in diagramuitdrukkingen.
De DIRECT QUERY-opdracht is zodanig ontworpen dat deze gegevensbronneutraal is voor gegevensbronnen die
Er kan gebruik worden gemaakt van NATIVE gegevensbronsyntaxis als de gebruiker weet op welke database query's moeten worden uitgevoerd en gebruik wil maken van databasespecifieke uitbreidingen van
- Als velduitdrukkingen in DIMENSION- en MEASURE-clausules
- Als de inhoud van de WHERE-clausule
Examples:
DIMENSION Dim1, Dim2MEASURENATIVE ('X % Y') AS X_MOD_Y
DIMENSION Dim1, Dim2MEASURE X, YFROM TableNameWHERE NATIVE ('EMAIL MATCHES "\*.EDU"')
Arguments:
Argument | Beschrijving |
---|---|
|
Een door komma's gescheiden lijst met veldspecificaties, fieldname {, fieldname}. Een veldspecificatie kan een veldnaam zijn. In dat geval wordt dezelfde naam gebruikt voor de databasekolomnaam en de QlikView-veldnaam. Een veldspecificatie kan ook een "veldalias" zijn. In dat geval wordt een QlikView-veldnaam gegeven aan een database-uitdrukking of kolomnaam. |
|
Een lijst met de namen van tabellen of weergaven in de database waaruit gegevens worden geladen. Gewoonlijk zijn dit weergaven die een JOIN bevatten die worden uitgevoerd op de database. |
|
De volledige syntaxis van WHERE-clausules voor databases wordt hier niet gedefinieerd, maar de meeste NOT is een unaire operator, in tegenstelling tot een modificatie voor bepaalde trefwoorden. 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)
Het laatste voorbeeld kan niet worden geschreven als: WHERE X NOT in (1,2,3)
|
Example:
In dit voorbeeld wordt een databasetabel genaamd
Bijvoorbeeld, de SELECT-opdracht:
SalesOrderID,
RevisionNumber,
OrderDate,
SubTotal,
TaxAmt
FROM MyDB.Sales.SalesOrderHeader;
kan worden gewijzigd in de volgende DIRECT QUERY-opdracht:
DIMENSION
SalesOrderID,
RevisionNumber
MEASURE
SubTotal,
TaxAmt
DETAIL
OrderDate
FROM MyDB.Sales.SalesOrderHeader;