<?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: Left Keep vs Where Exists in QlikView</title>
    <link>https://community.qlik.com/t5/QlikView/Left-Keep-vs-Where-Exists/m-p/448445#M167344</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have seen several cases where Left Keep is considerably &lt;STRONG&gt;&lt;EM&gt;faster&lt;/EM&gt;&lt;/STRONG&gt;. The reason is that a where Exists() need to perform the test (which could be a slow test, like a string comparison) on each record of the data. Whereas the Left Keep is a binary operation performed in one single step.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So I suggests you test with your own data... &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;HIC&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 18 Dec 2012 15:10:12 GMT</pubDate>
    <dc:creator>hic</dc:creator>
    <dc:date>2012-12-18T15:10:12Z</dc:date>
    <item>
      <title>Left Keep vs Where Exists</title>
      <link>https://community.qlik.com/t5/QlikView/Left-Keep-vs-Where-Exists/m-p/448442#M167341</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; I would like to know which is faster the Left keep or the where exists.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 18 Dec 2012 14:53:42 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Left-Keep-vs-Where-Exists/m-p/448442#M167341</guid>
      <dc:creator>brindlogcool</dc:creator>
      <dc:date>2012-12-18T14:53:42Z</dc:date>
    </item>
    <item>
      <title>Re: Left Keep vs Where Exists</title>
      <link>https://community.qlik.com/t5/QlikView/Left-Keep-vs-Where-Exists/m-p/448443#M167342</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi brindlogcool, "Where Exists" is a little faster, because on the Left Keep you load all the Data and on the Where Exists you load only the data which you need.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 18 Dec 2012 15:02:08 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Left-Keep-vs-Where-Exists/m-p/448443#M167342</guid>
      <dc:creator>bi4usupport</dc:creator>
      <dc:date>2012-12-18T15:02:08Z</dc:date>
    </item>
    <item>
      <title>Re: Left Keep vs Where Exists</title>
      <link>https://community.qlik.com/t5/QlikView/Left-Keep-vs-Where-Exists/m-p/448444#M167343</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Based on what QlikView does with JOINs and KEEPs, if the data set is large enough (more than several hundreds of thousands), I'd stick to the WHERE EXISTS() not only because it will likely perform faster, but mainly because the KEEP &lt;EM&gt;might&lt;/EM&gt; exhaust all available memory.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Of course, it depends not only on the number of rows but on your data as well, size of fields, distinct values... and on your hardware too.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope that helps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Miguel&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 18 Dec 2012 15:03:09 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Left-Keep-vs-Where-Exists/m-p/448444#M167343</guid>
      <dc:creator>Miguel_Angel_Baeyens</dc:creator>
      <dc:date>2012-12-18T15:03:09Z</dc:date>
    </item>
    <item>
      <title>Re: Left Keep vs Where Exists</title>
      <link>https://community.qlik.com/t5/QlikView/Left-Keep-vs-Where-Exists/m-p/448445#M167344</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have seen several cases where Left Keep is considerably &lt;STRONG&gt;&lt;EM&gt;faster&lt;/EM&gt;&lt;/STRONG&gt;. The reason is that a where Exists() need to perform the test (which could be a slow test, like a string comparison) on each record of the data. Whereas the Left Keep is a binary operation performed in one single step.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So I suggests you test with your own data... &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;HIC&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 18 Dec 2012 15:10:12 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Left-Keep-vs-Where-Exists/m-p/448445#M167344</guid>
      <dc:creator>hic</dc:creator>
      <dc:date>2012-12-18T15:10:12Z</dc:date>
    </item>
    <item>
      <title>Re: Left Keep vs Where Exists</title>
      <link>https://community.qlik.com/t5/QlikView/Left-Keep-vs-Where-Exists/m-p/448446#M167345</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I was replying but a quick test answered myself.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Anyway, I was assuming (and I was wrong) that KEEP works in a similar way JOIN does. I have tested JOINing two tables with 100K rows and 1M rows worth of data and I have exhausted 8Gb RAM (three fields, numeric values, autogenerated tables, just for testing).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Modifying the script to KEEP instead of JOIN took some time and memory, but finished quite fast, indeed. &lt;STRONG&gt;Way faster&lt;/STRONG&gt; than the EXISTS() with the same script actually.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Miguel&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 18 Dec 2012 15:33:20 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Left-Keep-vs-Where-Exists/m-p/448446#M167345</guid>
      <dc:creator>Miguel_Angel_Baeyens</dc:creator>
      <dc:date>2012-12-18T15:33:20Z</dc:date>
    </item>
    <item>
      <title>Re: Left Keep vs Where Exists</title>
      <link>https://community.qlik.com/t5/QlikView/Left-Keep-vs-Where-Exists/m-p/448447#M167346</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for all your responses, I will modifiy the Exisits with the Left keep and let you know the results&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 18 Dec 2012 16:51:49 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Left-Keep-vs-Where-Exists/m-p/448447#M167346</guid>
      <dc:creator>brindlogcool</dc:creator>
      <dc:date>2012-12-18T16:51:49Z</dc:date>
    </item>
    <item>
      <title>Re: Left Keep vs Where Exists</title>
      <link>https://community.qlik.com/t5/QlikView/Left-Keep-vs-Where-Exists/m-p/448448#M167347</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have done these tests today with 11.20 SR5. Left keep is still much faster than a Where Exists when reading QVD's over 25million records.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.qlik.com/qlik-users/4003"&gt;Henric Cronström&lt;/A&gt; : maybe spend a Blog Post on this to put it in the picture again?&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Dirk Konings&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 14 Aug 2014 12:45:34 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Left-Keep-vs-Where-Exists/m-p/448448#M167347</guid>
      <dc:creator>dirk_konings</dc:creator>
      <dc:date>2014-08-14T12:45:34Z</dc:date>
    </item>
  </channel>
</rss>

