<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: WHERE IN (previouslyLoadedTable.Field) in QlikView</title>
    <link>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/435998#M696445</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;you can do an &lt;STRONG&gt;inner join on your first table&lt;/STRONG&gt; instead of using Sub query and where clause, which will give you the correct result.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 09 Apr 2013 13:37:49 GMT</pubDate>
    <dc:creator />
    <dc:date>2013-04-09T13:37:49Z</dc:date>
    <item>
      <title>WHERE IN (previouslyLoadedTable.Field)</title>
      <link>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/435996#M696443</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm trying to restrict the number of records obtained through a SQL SELECT.&lt;/P&gt;&lt;P&gt;My code is something like this and it's working, but it is a bit redundant to restate the SELECT:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG style="color: #ff6600;"&gt;HEADER&lt;/STRONG&gt;:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LOAD &lt;STRONG style="color: #ff6600;"&gt;orderNumber&lt;/STRONG&gt;,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; orderDate;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SQL SELECT orderNumber,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; orderDate,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FROM db.orderHeaderTable&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WHERE orderDate BETWEEN date1 AND date2;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DETAILS:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LOAD orderNumber,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; orderItem,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; orderQty,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; orderPrice;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SQL SELECT orderNumber,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; orderItem,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; orderQty,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; orderPrice&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FROM db.orderDetailsTable&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;WHERE orderNumber IN (SELECT orderNumber FROM db.orderHeaderTable WHERE orderDate BETWEEN date1 AND date2)&lt;/STRONG&gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would like to change the WHERE statement in the last SELECT using the previously loaded table, something like:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;WHERE orderNumber IN (&lt;SPAN style="color: #ff6600;"&gt;HEADER.orderNumber&lt;/SPAN&gt;)&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I can't get that to work, is it possible to do?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 Apr 2013 11:24:37 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/435996#M696443</guid>
      <dc:creator />
      <dc:date>2013-04-09T11:24:37Z</dc:date>
    </item>
    <item>
      <title>Re: WHERE IN (previouslyLoadedTable.Field)</title>
      <link>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/435997#M696444</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You can use LEFT KEEP LOAD, or exists() function.&amp;nbsp; Here is an example with existst():&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;HEADER:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LOAD orderNumber,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; orderDate;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SQL SELECT orderNumber,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; orderDate,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FROM db.orderHeaderTable&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WHERE orderDate BETWEEN date1 AND date2;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DETAILS:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LOAD orderNumber,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; orderItem,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; orderQty,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; orderPrice&lt;BR /&gt;&lt;STRONG&gt;WHERE exists(orderNumber);&lt;/STRONG&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SQL SELECT orderNumber,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; orderItem,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; orderQty,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; orderPrice&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FROM db.orderDetailsTable&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 Apr 2013 12:39:12 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/435997#M696444</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2013-04-09T12:39:12Z</dc:date>
    </item>
    <item>
      <title>Re: WHERE IN (previouslyLoadedTable.Field)</title>
      <link>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/435998#M696445</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;you can do an &lt;STRONG&gt;inner join on your first table&lt;/STRONG&gt; instead of using Sub query and where clause, which will give you the correct result.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 Apr 2013 13:37:49 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/435998#M696445</guid>
      <dc:creator />
      <dc:date>2013-04-09T13:37:49Z</dc:date>
    </item>
    <item>
      <title>Re: WHERE IN (previouslyLoadedTable.Field)</title>
      <link>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/435999#M696446</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;No, you cannot reference a QlikView table (HEADER in your case) in the SQL SELECT part.&lt;/P&gt;&lt;P&gt;The SQL SELECT is sent for execution to the relational database that you are reading data from, and that database has no idea what HEADER.orderNumber is.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 Apr 2013 15:19:01 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/435999#M696446</guid>
      <dc:creator>gandalfgray</dc:creator>
      <dc:date>2013-04-09T15:19:01Z</dc:date>
    </item>
    <item>
      <title>Re: WHERE IN (previouslyLoadedTable.Field)</title>
      <link>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/436000#M696447</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;HI,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In Qlikview you can do this in load statement by using Except(), but you cannot directly do this in Select statement. Check Qlikview help file for example.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can optimize your script like below&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #ff6600;"&gt;HEADER&lt;/STRONG&gt;:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SQL SELECT orderNumber,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; orderDate,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FROM db.orderHeaderTable&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WHERE orderDate BETWEEN date1 AND date2; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DETAILS:&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SQL SELECT OD.orderNumber,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OD.orderItem,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OD.orderQty,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OD.orderPrice&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FROM db.orderDetailsTable OD&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INNER JOIN &lt;STRONG&gt;db.orderHeaderTable OHD ON OHD.&lt;/STRONG&gt;&lt;STRONG&gt;orderNumber&amp;nbsp; = OD.&lt;/STRONG&gt;&lt;STRONG&gt;orderNumber AND &lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; orderDate BETWEEN date1 AND date2;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this helps you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Jagan.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 Apr 2013 17:26:15 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/436000#M696447</guid>
      <dc:creator>jagan</dc:creator>
      <dc:date>2013-04-09T17:26:15Z</dc:date>
    </item>
    <item>
      <title>Re: WHERE IN (previouslyLoadedTable.Field)</title>
      <link>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/436001#M696448</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank You GandalfGray for the answer and clarification.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you all for your time, I appreciated the suggestion for the inner join.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 Apr 2013 18:18:08 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/436001#M696448</guid>
      <dc:creator />
      <dc:date>2013-04-09T18:18:08Z</dc:date>
    </item>
    <item>
      <title>Re: WHERE IN (previouslyLoadedTable.Field)</title>
      <link>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/436002#M696449</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Maybe INNER join is acceaptable for you, but it can give you a wrong result.&amp;nbsp; It eliminates Details row if there is no orderNumber in Header- but it also eliminates Header records in there is no orderNumber in Details.&amp;nbsp; If this situationj is possible, use LEFT join (or left keep).&amp;nbsp; Still, I recommend exists() function over the left join or left keep just because it is faster.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Michael&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 Apr 2013 19:15:20 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/436002#M696449</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2013-04-09T19:15:20Z</dc:date>
    </item>
    <item>
      <title>Re: WHERE IN (previouslyLoadedTable.Field)</title>
      <link>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/436003#M696450</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm really sorry Solomovich, I seen your first reply only now. I didn't want to ignore it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm quite new to QlikVew and testing things out.&lt;/P&gt;&lt;P&gt;I thought about the LEFT join.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can you please explain this a bit more?&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;Still, I recommend exists() function over the left join or left keep just because it is faster.&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'll try to explain how, at this time, I think it works:&lt;/P&gt;&lt;P&gt;- SQL to get the data from the DB;&lt;/P&gt;&lt;P&gt;- LOAD to load the data and make it usable to QlikView.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Maybe I'm wrong but, with performance&amp;nbsp; in mind, I don't think is good to extract all the Details table from the DB (without the orderNumber/Data constraint done through the Header table) and only then exclude the records I don't need with the exists() function.&lt;/P&gt;&lt;P&gt;As you stated it would be faster for QV to filter it, but wouldn't it be a pretty good workload - time consuming - for the DBServer to dump all the data in the table? Wouldn't it be a waste of bandwidth to send millions of records to a client and then filter it out? The details table is easily some millions records.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As I said I'm new to QV, so maybe I didn't understand how to use the exists() function correctly.&lt;/P&gt;&lt;P&gt;It is best to correct errors early, I don't want to pickup bad habits.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you in advance for you help,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;edit: rephrase, grammar.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 Apr 2013 20:53:27 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/436003#M696450</guid>
      <dc:creator />
      <dc:date>2013-04-09T20:53:27Z</dc:date>
    </item>
    <item>
      <title>Re: WHERE IN (previouslyLoadedTable.Field)</title>
      <link>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/436004#M696451</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Apparently the moderated mode introduced a lot of delays &lt;span class="lia-unicode-emoji" title=":disappointed_face:"&gt;😞&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let's start from your original question - how to load Details only if the Orders are loaded.&amp;nbsp; If we do not change the overall structure, keeping Headers and Details separately, you can use either LEFT KEEP LOAD or exists.&amp;nbsp; I showed the version with exists earlier.&amp;nbsp; Here is how it would be with LEFT KEEP LOAD:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;HEADER:&lt;BR /&gt;LOAD orderNumber,&lt;BR /&gt; orderDate;&lt;BR /&gt;SQL SELECT orderNumber,&lt;BR /&gt;&amp;nbsp; orderDate,&lt;BR /&gt;FROM db.orderHeaderTable&lt;BR /&gt;WHERE orderDate BETWEEN date1 AND date2;&lt;/P&gt;&lt;P&gt;DETAILS:&lt;BR /&gt;&lt;STRONG&gt;LEFT KEEP (HEADER)&lt;/STRONG&gt;&lt;BR /&gt;LOAD orderNumber,&lt;BR /&gt; orderItem,&lt;BR /&gt; orderQty,&lt;BR /&gt; orderPrice&lt;BR /&gt;WHERE exists(orderNumber);&lt;BR /&gt;SQL SELECT orderNumber,&lt;BR /&gt; orderItem,&lt;BR /&gt; orderQty,&lt;BR /&gt; orderPrice&lt;BR /&gt;FROM db.orderDetailsTable;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It will return the same result as version with exists(), loading the DETAILS rows only if the orderNumber value has been loaded into the data earlier (into any table).&amp;nbsp; From what I know, it will be slower with the left keep than with exists().&lt;BR /&gt;I'm not sure on what level the data filtering works, but so far my impression is that only the records that are needed will be pulled form the database.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now, how I'd do it in most cases.&amp;nbsp; I'd rather join both tables into one on the SQL level:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ORDERS:&lt;BR /&gt; orderNumber,&lt;BR /&gt; orderDate&lt;BR /&gt; orderItem,&lt;BR /&gt; orderQty,&lt;BR /&gt; orderPrice&lt;BR /&gt;SQL SELECT &lt;BR /&gt; h.orderNumber,&lt;BR /&gt; h.orderDate&lt;BR /&gt; d.orderItem,&lt;BR /&gt; d.orderQty,&lt;BR /&gt; d.orderPrice&lt;BR /&gt;FROM db.orderHeaderTable h&lt;BR /&gt;LEFT OUTER JOIN db.orderDetailsTable d on d.orderNumber=h.orderNumber&lt;BR /&gt;WHERE h.orderDate BETWEEN h.date1 AND h.date2;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I undersatnd that there could be some consequences, like multiple records with the same orderNumber, that should be dealt with later in the script or on the front end if necessary.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And, the last suggestion.&amp;nbsp; If you must keep HEADER and DETAILS as separate tables, &lt;STRONG&gt;and &lt;/STRONG&gt;at the same time the database workload has high priority, repeat the conditions it more or less the same way as you do now.&amp;nbsp; Except, I prefer this syntax:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;HEADER:&lt;BR /&gt;LOAD &lt;BR /&gt; orderNumber,&lt;BR /&gt; orderDate;&lt;BR /&gt;SQL SELECT &lt;BR /&gt; orderNumber,&lt;BR /&gt; orderDate,&lt;BR /&gt;FROM db.orderHeaderTable&lt;BR /&gt;WHERE orderDate BETWEEN date1 AND date2;&lt;/P&gt;&lt;P&gt;DETAILS:&lt;BR /&gt; orderNumber,&lt;BR /&gt; orderItem,&lt;BR /&gt; orderQty,&lt;BR /&gt; orderPrice&lt;BR /&gt;SQL SELECT &lt;BR /&gt; h.orderNumber,&lt;BR /&gt; d.orderItem,&lt;BR /&gt; d.orderQty,&lt;BR /&gt; d.orderPrice&lt;BR /&gt;FROM db.orderHeaderTable h&lt;BR /&gt;LEFT OUTER JOIN db.orderDetailsTable d on d.orderNumber=h.orderNumber&lt;BR /&gt;WHERE h.orderDate BETWEEN h.date1 AND h.date2;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Looks like I didn't add anything new after all... &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;BR /&gt;Michael&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 10 Apr 2013 14:24:40 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/436004#M696451</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2013-04-10T14:24:40Z</dc:date>
    </item>
    <item>
      <title>Re: WHERE IN (previouslyLoadedTable.Field)</title>
      <link>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/436005#M696452</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yes, I've to agree about the moderated mode ;(&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Yesterday morning, after various tests, I ended up with the LEFT join; I'm not concerned about the multiple records with same order number, I need it that way for certain kinds of analysis.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;About this:&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN style="color: #737373; font-family: Arial; background-color: #ffffff;"&gt;I'm not sure on what level the data filtering works, but so far my impression is that only the records that are needed will be pulled form the database.&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I will try that this morning, as I said my details table has some millions records in it so it would be pretty fast to check:)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I didn't thought about your last example, the one in my first post was pretty brutal with that subquery, I bet that yours is faster!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you again for your time,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 10 Apr 2013 22:41:49 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/WHERE-IN-previouslyLoadedTable-Field/m-p/436005#M696452</guid>
      <dc:creator />
      <dc:date>2013-04-10T22:41:49Z</dc:date>
    </item>
  </channel>
</rss>

