Keep
Het prefix keep is vergelijkbaar met het prefix join. Net als bij het prefix join wordt de geladen tabel vergeleken met een bestaande benoemde tabel of de laatste eerder gemaakte gegevenstabel. Maar de geladen tabel wordt niet samengevoegd met een bestaande tabel, in plaats daarvan wordt een tabel of worden beide tabellen voordat ze worden opgeslagen in QlikView 12 gereduceerd op basis van de doorsnede van de tabelgegevens. De uitgevoerde vergelijking is equivalent aan een natuurlijke join voor alle gemeenschappelijke velden, net zoals bij een overeenkomstige join. De twee tabellen worden echter niet samengevoegd, maar als twee afzonderlijk benoemde tabellen in QlikView 12 bewaard.
Syntaxis:
(inner | left | right) keep [(tablename ) ]( loadstatement | selectstatement )
Het prefix keep moet worden voorafgegaan door een van de volgende prefixen inner, left of right.
Het expliciete prefix join in de scripttaal van QlikView 12 zorgt voor een volledige koppeling van de twee tabellen. Het resultaat is één tabel. Dergelijke samenvoegingen resulteren vaak in zeer grote tabellen. Een van belangrijkste functies in QlikView 12 is de mogelijkheid om meerdere tabellen met elkaar te associëren in plaats van ze samen te voegen. Dit vereist veel minder geheugen, versnelt de verwerking en biedt een enorme flexibiliteit. Expliciete joins kunnen dan ook beter worden vermeden in QlikView 12-scripts. De functionaliteit van keep is ontworpen om het aantal gevallen waar expliciete joins moeten worden gebruikt te verkleinen.
Argumenten:
| Argument | Beschrijving |
|---|---|
| tablename | De benoemde tabel die moet worden vergeleken met de geladen tabel. |
| loadstatement of selectstatement | De LOAD of SELECT-opdracht voor de geladen tabel. |
Voorbeeld:
Inner Keep LOAD * from abc.csv;
Left Keep SELECT * from table1;
tab1:
LOAD * from file1.csv;
tab2:
LOAD * from file2.csv;
.. .. ..
Left Keep (tab1) LOAD * from file3.csv;