<?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: Tricky Incremental Load Scenario (Help Please) in New SAS User</title>
    <link>https://communities.sas.com/t5/New-SAS-User/Tricky-Incremental-Load-Scenario-Help-Please/m-p/528477#M5446</link>
    <description>&lt;P&gt;Sample&lt;/P&gt;
&lt;P&gt;Old is verno=1&lt;/P&gt;
&lt;P&gt;increment verno=2&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;if my understanding is correct, it's no biggie&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;

data old increment;
input (ID   Qst_Id    Yes_No    Ver_no  User_id ) ($)  Created_dt :datetime20.;
format Created_dt datetime20.;
if Ver_no='1' then output old;else output increment;
cards;
1     112          1              1             345       01Jan19:00:00:00
1     113          2              1             345       01Jan19:00:00:00
1     113          1              1             456       01Jan19:00:00:00
1     114          1              1             345       01Jan19:00:00:00
1     115          2              1             456       01Jan19:00:00:00
1     112          1              2             345       02Jan19:00:00:00
1     113          2              2             345       02Jan19:00:00:00
1     113          1              2             678       02Jan19:00:00:00
1     114          1              2             345       02Jan19:00:00:00
1     115          2              2             345       02Jan19:00:00:00
;

data want;
if _n_=1 then do;
   dcl hash H (dataset:'increment',multidata:'y') ;
   h.definekey  ("User_id",'id','Qst_Id') ;
   h.definedata (all:'y') ;
   h.definedone () ;
   dcl hiter hi('h');
end;
set old end=lr;
rc=h.find();
if rc=0 then do;
output;
rc1=h.remove();
end;
if lr ;
do while(hi.next()=0);
output;
end;
drop rc:;
run;

&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;And then a sort would get the id's in order&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;

proc sort data=want;
by id qst_id;
run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 18 Jan 2019 23:24:47 GMT</pubDate>
    <dc:creator>novinosrin</dc:creator>
    <dc:date>2019-01-18T23:24:47Z</dc:date>
    <item>
      <title>Tricky Incremental Load Scenario (Help Please)</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Tricky-Incremental-Load-Scenario-Help-Please/m-p/528473#M5445</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Im trying to create an incremental load process from a source table which contains over 40m rows of data.&lt;/P&gt;&lt;P&gt;At the moment i am utilizing the created date field&amp;nbsp; to extract and load the latest rows to my final SAS mart but the problem is its not getting the correct rows in, I'll explain.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;so the&amp;nbsp;&amp;nbsp; source table fields (Answers_Data table)&lt;/P&gt;&lt;P&gt;&lt;U&gt;ID&amp;nbsp;&lt;/U&gt;&amp;nbsp; &lt;U&gt;Qst_Id&lt;/U&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;U&gt;Yes/No&lt;/U&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;U&gt;Ver_no&lt;/U&gt;&amp;nbsp;&lt;U&gt; User_id&amp;nbsp;&lt;/U&gt;&amp;nbsp; &lt;U&gt;Created_dt&lt;/U&gt;&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 112 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&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; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 345&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 01Jan19:00:00:00&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 113&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&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; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 345&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 01Jan19:00:00:00&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 113&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&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; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 456&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 01Jan19:00:00:00&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 114 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&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; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 345 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 01Jan19:00:00:00&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 115 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 456&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 01Jan19:00:00:00&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 112 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&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; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 345&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 02Jan19:00:00:00&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 113&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&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; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 345&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 02Jan19:00:00:00&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 113&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&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; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 678 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 02Jan19:00:00:00&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 114 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&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; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 345 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 02Jan19:00:00:00&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 115 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 345 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 02Jan19:00:00:00&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My goal is to load the latest answers to the final data mart. by using the ver_no field&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;so i first create a subquery to select the latest version answers then to load the data a data step update transformation, with the by variables selected as ID, Qst_Id, User_id&lt;/P&gt;&lt;P&gt;running this query&amp;nbsp; the first time loads the first version answers data (i.e. ver_no 1)&amp;nbsp; and then when i run it the following day to load the latest answers (ie. ver_no 2)&amp;nbsp; it keeps the old record from ver no 1 (highlighted in bold below)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;the final table ends up looking like this.&lt;/P&gt;&lt;P&gt;&lt;U&gt;ID&amp;nbsp;&lt;/U&gt;&amp;nbsp; &lt;U&gt;Qst_Id&lt;/U&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;U&gt;Yes/No&lt;/U&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;U&gt;Ver_no&lt;/U&gt;&amp;nbsp;&lt;U&gt; User_id&amp;nbsp;&lt;/U&gt;&amp;nbsp; &lt;U&gt;Created_dt&lt;/U&gt;&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 112 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&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; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 345&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 02Jan19:00:00:00&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 113&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&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; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 345&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 02Jan19:00:00:00&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 113&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&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; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 456&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 01Jan19:00:00:00&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 113&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&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; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 678 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 02Jan19:00:00:00&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 114 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&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; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 345 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 02Jan19:00:00:00&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 115 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 345 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 02Jan19:00:00:00&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;what is happening is that we have two user_id;s answering the same question which is fine,&amp;nbsp; but in the second version of answers a different user_id (678)&amp;nbsp; is answering the same question and we want to overwrite the old answer by user_id(456) with the new answer by user_id (678)&amp;nbsp; so that the final table looks like this&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;U&gt;ID&amp;nbsp;&lt;/U&gt;&amp;nbsp; &lt;U&gt;Qst_Id&lt;/U&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;U&gt;Yes/No&lt;/U&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;U&gt;Ver_no&lt;/U&gt;&amp;nbsp;&lt;U&gt; User_id&amp;nbsp;&lt;/U&gt;&amp;nbsp; &lt;U&gt;Created_dt&lt;/U&gt;&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 112 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&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; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 345&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 02Jan19:00:00:00&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 113&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&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; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 345&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 02Jan19:00:00:00&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 113&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&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; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 678 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 02Jan19:00:00:00&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 114 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&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; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 345 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 02Jan19:00:00:00&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 115 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 345 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 02Jan19:00:00:00&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;i understand its because it cant find the matching user_id value when using the data step update with the by variables i selected&amp;nbsp; but how can i load this so that it overwrites the existing values with the new ones.&lt;/P&gt;&lt;P&gt;At the moment the process is doing a full data load which is time consuming and resource intensive hence why im trying to load it incrementally.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any help would be appreciated.&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 18 Jan 2019 22:50:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Tricky-Incremental-Load-Scenario-Help-Please/m-p/528473#M5445</guid>
      <dc:creator>chris16</dc:creator>
      <dc:date>2019-01-18T22:50:05Z</dc:date>
    </item>
    <item>
      <title>Re: Tricky Incremental Load Scenario (Help Please)</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Tricky-Incremental-Load-Scenario-Help-Please/m-p/528477#M5446</link>
      <description>&lt;P&gt;Sample&lt;/P&gt;
&lt;P&gt;Old is verno=1&lt;/P&gt;
&lt;P&gt;increment verno=2&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;if my understanding is correct, it's no biggie&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;

data old increment;
input (ID   Qst_Id    Yes_No    Ver_no  User_id ) ($)  Created_dt :datetime20.;
format Created_dt datetime20.;
if Ver_no='1' then output old;else output increment;
cards;
1     112          1              1             345       01Jan19:00:00:00
1     113          2              1             345       01Jan19:00:00:00
1     113          1              1             456       01Jan19:00:00:00
1     114          1              1             345       01Jan19:00:00:00
1     115          2              1             456       01Jan19:00:00:00
1     112          1              2             345       02Jan19:00:00:00
1     113          2              2             345       02Jan19:00:00:00
1     113          1              2             678       02Jan19:00:00:00
1     114          1              2             345       02Jan19:00:00:00
1     115          2              2             345       02Jan19:00:00:00
;

data want;
if _n_=1 then do;
   dcl hash H (dataset:'increment',multidata:'y') ;
   h.definekey  ("User_id",'id','Qst_Id') ;
   h.definedata (all:'y') ;
   h.definedone () ;
   dcl hiter hi('h');
end;
set old end=lr;
rc=h.find();
if rc=0 then do;
output;
rc1=h.remove();
end;
if lr ;
do while(hi.next()=0);
output;
end;
drop rc:;
run;

&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;And then a sort would get the id's in order&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;

proc sort data=want;
by id qst_id;
run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 18 Jan 2019 23:24:47 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Tricky-Incremental-Load-Scenario-Help-Please/m-p/528477#M5446</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2019-01-18T23:24:47Z</dc:date>
    </item>
    <item>
      <title>Re: Tricky Incremental Load Scenario (Help Please)</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Tricky-Incremental-Load-Scenario-Help-Please/m-p/528484#M5447</link>
      <description>&lt;BLOCKQUOTE&gt;
&lt;P&gt;what is happening is that we have two user_id;s answering the same question which is fine,&amp;nbsp; but in the second version of answers a different user_id (678)&amp;nbsp; is answering the same question and we want to overwrite the old answer by user_id(456) with the new answer by user_id (678)&amp;nbsp; so that the final table looks like this&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;/BLOCKQUOTE&gt;
&lt;P&gt;How do you know this? What fields tell you this&amp;nbsp;record overwrites the user record? Same date/question only? Location of record?&lt;/P&gt;</description>
      <pubDate>Fri, 18 Jan 2019 23:44:55 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Tricky-Incremental-Load-Scenario-Help-Please/m-p/528484#M5447</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2019-01-18T23:44:55Z</dc:date>
    </item>
    <item>
      <title>Re: Tricky Incremental Load Scenario (Help Please)</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Tricky-Incremental-Load-Scenario-Help-Please/m-p/528493#M5448</link>
      <description>&lt;P&gt;I'm not clear on what you want.&amp;nbsp; It appears you want, for each QST_ID, all records that fall on&amp;nbsp;the latest date.&amp;nbsp; Is that correct?&amp;nbsp; (Or maybe you want, for each QST_ID, all records that have the latest version).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;And is it also true that your data are sorted by date?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;And does each date possess at least one instance of each QST_ID?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Finally, in what order to you want the resulting data presented?&lt;/P&gt;</description>
      <pubDate>Sat, 19 Jan 2019 01:32:23 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Tricky-Incremental-Load-Scenario-Help-Please/m-p/528493#M5448</guid>
      <dc:creator>mkeintz</dc:creator>
      <dc:date>2019-01-19T01:32:23Z</dc:date>
    </item>
    <item>
      <title>Re: Tricky Incremental Load Scenario (Help Please)</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Tricky-Incremental-Load-Scenario-Help-Please/m-p/528505#M5451</link>
      <description>Hi, Thanks for your solution but how would i approach this with multiple version answers. in the data i have seen answers up to ver_no 5 .</description>
      <pubDate>Sat, 19 Jan 2019 09:43:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Tricky-Incremental-Load-Scenario-Help-Please/m-p/528505#M5451</guid>
      <dc:creator>chris16</dc:creator>
      <dc:date>2019-01-19T09:43:31Z</dc:date>
    </item>
    <item>
      <title>Re: Tricky Incremental Load Scenario (Help Please)</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Tricky-Incremental-Load-Scenario-Help-Please/m-p/528506#M5452</link>
      <description>Hi, the customer is only interested in the most recent answers so in this case all the ver_no 2 answers. The user_id should overwrite the value in the user_id field same with the qst_id.&lt;BR /&gt;When i load this the second time to update the table with the new answers (ver_no 2) i need to overwrite all ver_no 1 answers but i am using a data step update transform with by variables ID, Qst_Id, User_id therefore its trying to match these. So it uploads the new answers (ver_no2) fine but still keeps one of the old ver no 1 answer since it kind find a matching user_id value in the second load&lt;BR /&gt;ID Qst_Id Yes/No Ver_no User_id&lt;BR /&gt;1 113 1 1 456&lt;BR /&gt;&lt;BR /&gt;hope this make sense.&lt;BR /&gt;thanks</description>
      <pubDate>Sat, 19 Jan 2019 09:46:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Tricky-Incremental-Load-Scenario-Help-Please/m-p/528506#M5452</guid>
      <dc:creator>chris16</dc:creator>
      <dc:date>2019-01-19T09:46:10Z</dc:date>
    </item>
    <item>
      <title>Re: Tricky Incremental Load Scenario (Help Please)</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Tricky-Incremental-Load-Scenario-Help-Please/m-p/528508#M5453</link>
      <description>Hi , in a nut shell i just want to load the most recent answers in my final table but rather than doing a full load of everything i want it done incrementally. im using the datetime parameters to determine the most recent data.&lt;BR /&gt;To answer your questions, i want for each qst_id the latest answer version attached.&lt;BR /&gt;When a user changes the answer to a question it saves the new answer creating a new version (i.e. ver no 2) however even if the other answers haven't changed the system still records them as a new version(ver_no 2).&lt;BR /&gt;So overall it records the questions and answers again under the new ver_no. Also the date time is recorded along with the new ver_no for all questions when the user clicks save. as shown in the data.&lt;BR /&gt;This data is from an oracle database and is sorted by ver_no&lt;BR /&gt;Hope this helps.&lt;BR /&gt;Thanks</description>
      <pubDate>Sat, 19 Jan 2019 10:03:56 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Tricky-Incremental-Load-Scenario-Help-Please/m-p/528508#M5453</guid>
      <dc:creator>chris16</dc:creator>
      <dc:date>2019-01-19T10:03:56Z</dc:date>
    </item>
  </channel>
</rss>

