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

Load Resident with Join exclusion

Hi, I'm a new QlikView user & would like to perform a LOAD RESIDENT using another table to exclude values in my load: Table tempPOS has been created, joining 2 different data sources into 1 with a POSID string value as the primary key. From tempPOS, I created a POSException table to write rows that had invalid value combinations POSException also contains a POSID column. Now I would like to create a POSTransaction table using a LOAD [column list] RESIDENT tempPOS where POSID is not in POSException. In other words, I'd like to exclude exception transactions that were written to the POSException table. Can you help?

1 Solution

Accepted Solutions
Anonymous
Not applicable
Author

Try this.


POSException:
LOAD DISTINCT
POSID,
POSID as EXCLUDE
...
RESIDENT ...
...
POSTransaction:
LOAD
POSID,
...
RESIDENT tempPOS
WHERE not exists(EXCLUDE, POSID);


View solution in original post

5 Replies
Anonymous
Not applicable
Author

Try this.


POSException:
LOAD DISTINCT
POSID,
POSID as EXCLUDE
...
RESIDENT ...
...
POSTransaction:
LOAD
POSID,
...
RESIDENT tempPOS
WHERE not exists(EXCLUDE, POSID);


Not applicable
Author

Thank you Michael! It worked like a charm Big Smile

rbecher
MVP
MVP

Micheal,

thank you for that. Sometimes one have to think around a corner.

Ralf

Astrato.io Head of R&D
johnw
Champion III
Champion III

For large data sets, I suspect it would be more efficient for both memory and CPU to do something like this:

POSTransaction:
LOAD <fields>
FROM <first data source>
;
LOAD <fields>
FROM <second data source>
;
INNER JOIN
LOAD POSID
RESIDENT POSTransaction
WHERE NOT (<condition you were using for POSexception>)
;


Black_Hole
Creator II
Creator II

Hello @johnw ,

I would like to know if your solution can be used also in the case where the data source is an ODBC connection.

Because, I try it and I have an error message.

Thank you in advance for your help.