Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

When to use Keep and When to use Join?

Tell me anyone.

Regards,
Hussain.

1 Reply
qlikviewwizard
Master II
Master II

For example:

You have table1 (100 rows ) and table2 (millions of rows ). If you want to remove unmatched rows from the table2 as millions of rows consume much space/memory.

Table1:

Load * from Table1

INNER KEEP 

Load * from Table2;

This will give out put with 100 rows in Table1 and 100 matched rows in Table2.

(inner | left | right) keep [(tablename ) ]( loadstatement | selectstatement )

 The keep prefix must be preceded by one of the prefixes inner, left or right.

The explicit join prefix in QlikView script language performs a full join of the two tables. The result is one table. In many cases such joins will result in very large tables. One of the main features of QlikView is its ability to make associations between multiple tables instead of joining them, which greatly reduces memory usage, increases processing speed and offers enormous flexibility. Explicit joins should therefore generally be avoided in QlikView scripts. The keep functionality was designed to reduce the number of cases where explicit joins needs to be used.