<?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: Capturing multiple patterns using like Operator in proc SQL in SAS Procedures</title>
    <link>https://communities.sas.com/t5/SAS-Procedures/Capturing-multiple-patterns-using-like-Operator-in-proc-SQL/m-p/182063#M46360</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 13px; background-color: #ffffff;"&gt;If you really are looking for only the prefix AN or RE and prefer to stay with SQL, use:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;where substr(name, 1, 2) in ("AN", "RE");&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PG&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 26 Feb 2015 03:41:38 GMT</pubDate>
    <dc:creator>PGStats</dc:creator>
    <dc:date>2015-02-26T03:41:38Z</dc:date>
    <item>
      <title>Capturing multiple patterns using like Operator in proc SQL</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Capturing-multiple-patterns-using-like-Operator-in-proc-SQL/m-p/182058#M46355</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;&lt;STRONG style="font-family: 'comic sans ms', sans-serif;"&gt;Hello,&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;&lt;STRONG style="font-family: 'comic sans ms', sans-serif;"&gt;I am trying to capture all the names that follow a pattern using the LIKE operator in proc sql. I don't want to use a OR command or a UNION in my sql. Is there a better way of doing it like using a IN associated with LIKE.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;data test ;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;input id name $ ;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;datalines ;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;12 ANOOP&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;13 ANEESH&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;14 REMYA&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;15 REMY&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;16 JACK&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;17 JACOB&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;19 AMY&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;20 ROSE&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;run ;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;proc sql;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;select * &lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;from test&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;where name like in('%AN%','%RE%') ;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'comic sans ms', sans-serif; color: #ff0000;"&gt;&lt;STRONG&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style=": ; color: #ff0000; font-family: 'comic sans ms', sans-serif;"&gt;when i execute this I get the below error&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style=": ; color: #ff0000; font-family: 'comic sans ms', sans-serif;"&gt;ERROR: LIKE operator requires character operands.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;so I removed IN and ran it and I got the below errors&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff; font-family: 'courier new', courier;"&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000; font-family: 'comic sans ms', sans-serif;"&gt;43&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where name like ('%AN%','%RE%') ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000; font-family: 'comic sans ms', sans-serif;"&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000; font-family: 'comic sans ms', sans-serif;"&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 22&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000; font-family: 'comic sans ms', sans-serif;"&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 76&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000; font-family: 'comic sans ms', sans-serif;"&gt;ERROR 22-322: Syntax error, expecting one of the following: !, !!, &amp;amp;, ), *, **, +, -, /, &amp;lt;, &amp;lt;=, &amp;lt;&amp;gt;, =, &amp;gt;, &amp;gt;=, ?, AND, BETWEEN, &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000; font-family: 'comic sans ms', sans-serif;"&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; CONTAINS, EQ, EQT, GE, GET, GT, GTT, IN, IS, LE, LET, LIKE, LT, LTT, NE, NET, NOT, NOTIN, OR, ^, ^=, |, ||, ~, ~=.&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000; font-family: 'comic sans ms', sans-serif;"&gt;ERROR 76-322: Syntax error, statement will be ignored.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 25 Feb 2015 22:04:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Capturing-multiple-patterns-using-like-Operator-in-proc-SQL/m-p/182058#M46355</guid>
      <dc:creator>anoopm7</dc:creator>
      <dc:date>2015-02-25T22:04:06Z</dc:date>
    </item>
    <item>
      <title>Re: Capturing multiple patterns using like Operator in proc SQL</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Capturing-multiple-patterns-using-like-Operator-in-proc-SQL/m-p/182059#M46356</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I don't know if there would be any benefit to using :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;where prxmatch ("/AN|RE/oi", name) &amp;gt; 0;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PG&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-size: 13px; font-family: 'courier new', courier; color: #0000ff; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 25 Feb 2015 22:41:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Capturing-multiple-patterns-using-like-Operator-in-proc-SQL/m-p/182059#M46356</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2015-02-25T22:41:36Z</dc:date>
    </item>
    <item>
      <title>Re: Capturing multiple patterns using like Operator in proc SQL</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Capturing-multiple-patterns-using-like-Operator-in-proc-SQL/m-p/182060#M46357</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;Are you sure that you want the LIKE condition with the preceding %.&amp;nbsp; Meaning that you are looking to select rows where the name contains the string AN or RE anywhere in the name, rather than just as a prefix, as your data suggests?&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 25 Feb 2015 23:19:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Capturing-multiple-patterns-using-like-Operator-in-proc-SQL/m-p/182060#M46357</guid>
      <dc:creator>FriedEgg</dc:creator>
      <dc:date>2015-02-25T23:19:41Z</dc:date>
    </item>
    <item>
      <title>Re: Capturing multiple patterns using like Operator in proc SQL</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Capturing-multiple-patterns-using-like-Operator-in-proc-SQL/m-p/182061#M46358</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;If (1) you really are looking for only the prefix AN or RE, and (2) you are willing to switch from SQL to a DATA step, it becomes easy:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;where name in &lt;STRONG&gt;:&lt;/STRONG&gt; ('AN', 'RE');&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 25 Feb 2015 23:51:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Capturing-multiple-patterns-using-like-Operator-in-proc-SQL/m-p/182061#M46358</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2015-02-25T23:51:01Z</dc:date>
    </item>
    <item>
      <title>Re: Capturing multiple patterns using like Operator in proc SQL</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Capturing-multiple-patterns-using-like-Operator-in-proc-SQL/m-p/182062#M46359</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;If you want to search a string for more than one substring anywhere in the string (as your LIKE indicates) then I would go for a regular expression as already proposed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you run this SQL against a data base then I would use explicit SQL and use the data base function for regular expressions (a lot of data bases have such an implementation) to avoid downloading all the data first into SAS for sub-setting (prxmatch() can't be pushed to the data base for execution).&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 26 Feb 2015 00:13:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Capturing-multiple-patterns-using-like-Operator-in-proc-SQL/m-p/182062#M46359</guid>
      <dc:creator>Patrick</dc:creator>
      <dc:date>2015-02-26T00:13:19Z</dc:date>
    </item>
    <item>
      <title>Re: Capturing multiple patterns using like Operator in proc SQL</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Capturing-multiple-patterns-using-like-Operator-in-proc-SQL/m-p/182063#M46360</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 13px; background-color: #ffffff;"&gt;If you really are looking for only the prefix AN or RE and prefer to stay with SQL, use:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;where substr(name, 1, 2) in ("AN", "RE");&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PG&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 26 Feb 2015 03:41:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Capturing-multiple-patterns-using-like-Operator-in-proc-SQL/m-p/182063#M46360</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2015-02-26T03:41:38Z</dc:date>
    </item>
    <item>
      <title>Re: Capturing multiple patterns using like Operator in proc SQL</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Capturing-multiple-patterns-using-like-Operator-in-proc-SQL/m-p/182064#M46361</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks. That almost gave me what I am looking for. But if they come between the sentence I may not be able to use the IN and SUBSTR. So in that case is the best approach to shift from proc sql using to the basic data step and using a Where condition?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 26 Feb 2015 14:24:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Capturing-multiple-patterns-using-like-Operator-in-proc-SQL/m-p/182064#M46361</guid>
      <dc:creator>anoopm7</dc:creator>
      <dc:date>2015-02-26T14:24:22Z</dc:date>
    </item>
    <item>
      <title>Re: Capturing multiple patterns using like Operator in proc SQL</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Capturing-multiple-patterns-using-like-Operator-in-proc-SQL/m-p/182065#M46362</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;@Astounding's proposition and mine above are &lt;SPAN style="text-decoration: underline;"&gt;both for the prefix only case&lt;/SPAN&gt;. If the substring can occur anywhere in the sentence, go for the &lt;STRONG&gt;PRXMATCH&lt;/STRONG&gt; solution proposed earlier. - PG&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 26 Feb 2015 16:41:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Capturing-multiple-patterns-using-like-Operator-in-proc-SQL/m-p/182065#M46362</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2015-02-26T16:41:11Z</dc:date>
    </item>
  </channel>
</rss>

