<?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 Selecting from a Group in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Selecting-from-a-Group/m-p/539349#M148593</link>
    <description>&lt;P&gt;&lt;FONT face="courier new,courier"&gt;Flights are assigned a UNIQUE numeric flt_biz_uid.&amp;nbsp; Each flight can have multiple messages associated with it. These messages are then grouped into 3 numeric types that are either 1 or 0 (true or not). Here is an example:&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;flt_biz_uid&amp;nbsp; &amp;nbsp; msg_biz_uid&amp;nbsp; &amp;nbsp; edm_datalink&amp;nbsp; &amp;nbsp; gander_datalink&amp;nbsp; &amp;nbsp; gander_voice&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 22&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;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 23&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 26&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 26&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 22&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 23&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;Supposed I want to pick flights that have edm_datalink=0 AND gander_datalink=0 AND gander_voice=0, but only if that particular flight has no messages that ever contained a edm_datalink=1 or a&amp;nbsp;gander_datalink=1 or a&amp;nbsp;gander_voice=1&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;In the example above, flt_biz_uid of 1 would NOT be included since its flight contains messages that have a 1 somewhere in&amp;nbsp;edm_datalink, gander_datalink, or a&amp;nbsp;gander_voice.&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;Meanwhile, flt_biz_uid 2 would be selected as there are 0s in all of its flight history for&amp;nbsp;edm_datalink, gander_datalink, and gander_voice.&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;Can this be done easily?&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;Essentially this is "select flt_biz_uid when&amp;nbsp;edm_datalink=0 AND gander_datalink=0 AND gander_voice=0 as long as the history of that flt_biz_uid has ALWAYS had&amp;nbsp;edm_datalink=0 AND gander_datalink=0 AND gander_voice=0"&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;thx!&lt;/FONT&gt;&lt;/P&gt;</description>
    <pubDate>Thu, 28 Feb 2019 15:58:09 GMT</pubDate>
    <dc:creator>BCNAV</dc:creator>
    <dc:date>2019-02-28T15:58:09Z</dc:date>
    <item>
      <title>Selecting from a Group</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Selecting-from-a-Group/m-p/539349#M148593</link>
      <description>&lt;P&gt;&lt;FONT face="courier new,courier"&gt;Flights are assigned a UNIQUE numeric flt_biz_uid.&amp;nbsp; Each flight can have multiple messages associated with it. These messages are then grouped into 3 numeric types that are either 1 or 0 (true or not). Here is an example:&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;flt_biz_uid&amp;nbsp; &amp;nbsp; msg_biz_uid&amp;nbsp; &amp;nbsp; edm_datalink&amp;nbsp; &amp;nbsp; gander_datalink&amp;nbsp; &amp;nbsp; gander_voice&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 22&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;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 23&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 26&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 26&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 22&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 23&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;0&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;Supposed I want to pick flights that have edm_datalink=0 AND gander_datalink=0 AND gander_voice=0, but only if that particular flight has no messages that ever contained a edm_datalink=1 or a&amp;nbsp;gander_datalink=1 or a&amp;nbsp;gander_voice=1&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;In the example above, flt_biz_uid of 1 would NOT be included since its flight contains messages that have a 1 somewhere in&amp;nbsp;edm_datalink, gander_datalink, or a&amp;nbsp;gander_voice.&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;Meanwhile, flt_biz_uid 2 would be selected as there are 0s in all of its flight history for&amp;nbsp;edm_datalink, gander_datalink, and gander_voice.&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;Can this be done easily?&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;Essentially this is "select flt_biz_uid when&amp;nbsp;edm_datalink=0 AND gander_datalink=0 AND gander_voice=0 as long as the history of that flt_biz_uid has ALWAYS had&amp;nbsp;edm_datalink=0 AND gander_datalink=0 AND gander_voice=0"&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;thx!&lt;/FONT&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 28 Feb 2019 15:58:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Selecting-from-a-Group/m-p/539349#M148593</guid>
      <dc:creator>BCNAV</dc:creator>
      <dc:date>2019-02-28T15:58:09Z</dc:date>
    </item>
    <item>
      <title>Re: Selecting from a Group</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Selecting-from-a-Group/m-p/539354#M148595</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/142314"&gt;@BCNAV&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT face="courier new,courier"&gt;Essentially this is "select flt_biz_uid when&amp;nbsp;edm_datalink=0 AND gander_datalink=0 AND gander_voice=0 as long as the history of that flt_biz_uid has ALWAYS had&amp;nbsp;edm_datalink=0 AND gander_datalink=0 AND gander_voice=0"&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="courier new,courier"&gt;thx!&lt;/FONT&gt;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Do you mean this?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input flt_biz_uid    msg_biz_uid    edm_datalink    gander_datalink    gander_voice ;
cards;
1                  22         1               0                  0
1                  23         0               0                  1
1                  26         0               0                  0
2                  26         0               0                  0
2                  22         0               0                  0
2                  23         0               0                  0
;

proc sql;
create table want(drop=m) as 
select *,max(max(edm_datalink ,   gander_datalink ,   gander_voice)) as m
from have
group by flt_biz_uid
having m=0;
quit;
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 28 Feb 2019 16:09:14 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Selecting-from-a-Group/m-p/539354#M148595</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2019-02-28T16:09:14Z</dc:date>
    </item>
    <item>
      <title>Re: Selecting from a Group</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Selecting-from-a-Group/m-p/539362#M148597</link>
      <description>&lt;P&gt;Another way to write the same query&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
create table want as 
select *
from have
group by flt_biz_uid
having max(max(edm_datalink ,   gander_datalink ,   gander_voice))=0;
quit;
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 28 Feb 2019 16:25:53 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Selecting-from-a-Group/m-p/539362#M148597</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2019-02-28T16:25:53Z</dc:date>
    </item>
    <item>
      <title>Re: Selecting from a Group</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Selecting-from-a-Group/m-p/539369#M148602</link>
      <description>&lt;P&gt;Or Datastep&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
do until(last.flt_biz_uid);
set have;
by flt_biz_uid;
m=max(edm_datalink ,   gander_datalink ,   gander_voice);
m1=max(m1,m);
end;
do until(last.flt_biz_uid);
set have;
by flt_biz_uid;
if not m1 then output;
end;
drop m:;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 28 Feb 2019 16:34:56 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Selecting-from-a-Group/m-p/539369#M148602</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2019-02-28T16:34:56Z</dc:date>
    </item>
    <item>
      <title>Re: Selecting from a Group</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Selecting-from-a-Group/m-p/539373#M148605</link>
      <description>&lt;P&gt;awesome!&lt;/P&gt;</description>
      <pubDate>Thu, 28 Feb 2019 16:46:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Selecting-from-a-Group/m-p/539373#M148605</guid>
      <dc:creator>BCNAV</dc:creator>
      <dc:date>2019-02-28T16:46:01Z</dc:date>
    </item>
  </channel>
</rss>

