<?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: Convert SAS macro to SQL in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Convert-SAS-macro-to-SQL/m-p/759604#M240084</link>
    <description>Got it! Thank you for the advice, really appreciate it!</description>
    <pubDate>Thu, 05 Aug 2021 03:23:22 GMT</pubDate>
    <dc:creator>Joe75</dc:creator>
    <dc:date>2021-08-05T03:23:22Z</dc:date>
    <item>
      <title>Convert SAS macro to SQL</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Convert-SAS-macro-to-SQL/m-p/759581#M240070</link>
      <description>&lt;P&gt;Would like to seek advice to convert the SAS Macro script below, to MS SQL format:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cse86e809f1"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;%MACRO&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="csf0180831"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;RETAIN_DIGIT&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CLEANUP_VAR=MOBILE_NO;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="csc21264ea1"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;%DO&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt; I=&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;1&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="csc21264ea1"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;%TO&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;30&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="csc21264ea1"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;%LET&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt; J=&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="csc21264ea1"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;%EVAL&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;(&amp;amp;I+1);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="csc21264ea1"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;%LET&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt; H=&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="csc21264ea1"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;%EVAL&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;(&amp;amp;I-1);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IF LENGTH(MOBILE_NO)&amp;gt;=&amp;amp;I THEN DO;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&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; IF COMPRESS(SUBSTR(MOBILE_NO,&amp;amp;I,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;1&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;),&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;""&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;"D"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;)^=&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;""&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt; THEN DO;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&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; IF SUBSTR(MOBILE_NO,&amp;amp;I,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;1&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;) IN (&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;"O"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;"Q"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;) AND LENGTH(COMPRESS(SUBSTR(MOBILE_NO,&amp;amp;J),&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;""&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;"KD"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;))&amp;gt;=&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;9&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt; THEN &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&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; IF LENGTH(COMPRESS(SUBSTR(COMPRESS(SUBSTR(MOBILE_NO,&amp;amp;J)),&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;1&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;2&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;),&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;""&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;"KD"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;))=&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;2&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt; THEN &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&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;&amp;nbsp;&amp;nbsp; IF &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;10&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;&amp;lt;=INPUT(SUBSTR(COMPRESS(SUBSTR(MOBILE_NO,&amp;amp;J)),&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;1&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;2&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;),&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="csfcfc27041"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;$2.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;)&amp;lt;=&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;19&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt; THEN &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&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;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CLEANUP_VAR=TRANSLATE(CLEANUP_VAR,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;"0"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;,SUBSTR(CLEANUP_VAR,&amp;amp;I,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;1&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;));&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&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;&amp;nbsp;&amp;nbsp; ELSE CLEANUP_VAR=TRANSLATE(CLEANUP_VAR,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;" "&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;,SUBSTR(CLEANUP_VAR,&amp;amp;I,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;1&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;));&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&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; ELSE CLEANUP_VAR=TRANSLATE(CLEANUP_VAR,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;" "&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;,SUBSTR(CLEANUP_VAR,&amp;amp;I,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;1&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;));&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&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; ELSE CLEANUP_VAR=TRANSLATE(CLEANUP_VAR,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;" "&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;,SUBSTR(CLEANUP_VAR,&amp;amp;I,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;1&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;));&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&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; END;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&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; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="csc21264ea1"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;%IF&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt; &amp;amp;I&amp;gt;=&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;3&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="csc21264ea1"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;%THEN&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="csc21264ea1"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;%DO&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&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; ELSE IF COMPRESS(SUBSTR(MOBILE_NO,&amp;amp;I,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;1&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;),&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;""&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;"KD"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;)^=&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;""&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt; AND LENGTH(COMPRESS(SUBSTR(MOBILE_NO,&amp;amp;J),&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;""&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;"KD"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;))&amp;gt;=&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;7&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt; THEN DO;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&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; IF COMPRESS(SUBSTR(MOBILE_NO,&amp;amp;I,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;1&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;),&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;""&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;"KD"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;)^=&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;""&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt; AND SUBSTR(MOBILE_NO,&amp;amp;H,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;1&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;)=&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;"/"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&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; AND (SUBSTR(MOBILE_NO,&amp;amp;J,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;1&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;)=&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;"-"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt; OR SUBSTR(MOBILE_NO,&amp;amp;J,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;1&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;)=&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;" "&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&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; THEN CLEANUP_VAR=SUBSTR(CLEANUP_VAR,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs73b654131"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;1&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;,&amp;amp;H)||&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs871347d21"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;" "&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;||SUBSTR(CLEANUP_VAR,&amp;amp;J);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&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; END;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&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; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="csc21264ea1"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;%END&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; END;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="csc21264ea1"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;%END&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CLEANUP_VAR=STRIP(COMPBL(CLEANUP_VAR));&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="cs95e872d0"&gt;&lt;SPAN class="cse86e809f1"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;%MEND&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="cs72ac20a41"&gt;&lt;SPAN style="font-size: 10.0pt;"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 05 Aug 2021 02:17:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Convert-SAS-macro-to-SQL/m-p/759581#M240070</guid>
      <dc:creator>Joe75</dc:creator>
      <dc:date>2021-08-05T02:17:15Z</dc:date>
    </item>
    <item>
      <title>Re: Convert SAS macro to SQL</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Convert-SAS-macro-to-SQL/m-p/759586#M240075</link>
      <description>&lt;P&gt;The macro only contains text string manipulation logic with no data input or output. You've missed out the rest of the processing.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Having said that, the only way I can see this being done in MS SQL is as a stored procedure using cursors and looping logic as "normal" SQL has no concept of looping. This is extremely ugly and I can't recommend you attempting it unless you are familiar with database stored procedures.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 05 Aug 2021 02:36:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Convert-SAS-macro-to-SQL/m-p/759586#M240075</guid>
      <dc:creator>SASKiwi</dc:creator>
      <dc:date>2021-08-05T02:36:09Z</dc:date>
    </item>
    <item>
      <title>Re: Convert SAS macro to SQL</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Convert-SAS-macro-to-SQL/m-p/759589#M240078</link>
      <description>&lt;P&gt;You may get a better response by providing 1) a description of what that code is supposed to do, 2) examples of the data before the process and 3) what the data looks like afterward.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Loops like that are really not very natural to SQL and it may be better to redesign from scratch instead of trying to do a line by line translation of data step code to SQL (which generally doesn't work well.)&lt;/P&gt;</description>
      <pubDate>Thu, 05 Aug 2021 02:41:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Convert-SAS-macro-to-SQL/m-p/759589#M240078</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2021-08-05T02:41:24Z</dc:date>
    </item>
    <item>
      <title>Re: Convert SAS macro to SQL</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Convert-SAS-macro-to-SQL/m-p/759593#M240079</link>
      <description>&lt;P&gt;Thank you very much for your advice!&lt;/P&gt;</description>
      <pubDate>Thu, 05 Aug 2021 02:48:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Convert-SAS-macro-to-SQL/m-p/759593#M240079</guid>
      <dc:creator>Joe75</dc:creator>
      <dc:date>2021-08-05T02:48:38Z</dc:date>
    </item>
    <item>
      <title>Re: Convert SAS macro to SQL</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Convert-SAS-macro-to-SQL/m-p/759604#M240084</link>
      <description>Got it! Thank you for the advice, really appreciate it!</description>
      <pubDate>Thu, 05 Aug 2021 03:23:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Convert-SAS-macro-to-SQL/m-p/759604#M240084</guid>
      <dc:creator>Joe75</dc:creator>
      <dc:date>2021-08-05T03:23:22Z</dc:date>
    </item>
  </channel>
</rss>

