<?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 Need approach on design of implementing If-elseif content SQL query in Talend in Talend Studio</title>
    <link>https://community.qlik.com/t5/Talend-Studio/Need-approach-on-design-of-implementing-If-elseif-content-SQL/m-p/2265744#M45186</link>
    <description>&lt;P&gt;Hi Team,&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Can you please suggest approach to design below SQL query in Talend . There are different query based on condition check in If -else if.&lt;/P&gt; 
&lt;P&gt;Please suggest.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;IF LOC_REC IS NULL AND (LOC_MAX_YEAR - LOC_MIN_YEAR &amp;lt;= 1) THEN&lt;/P&gt; 
&lt;P&gt;INSERT INTO VMRCTTA1.VMRRCUST_DETAILS(CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV)&lt;BR /&gt;SELECT CUST_CNTRY_CD ,&lt;BR /&gt;CUST_YEAR ,&lt;BR /&gt;CUST_GSSN_CD ,&lt;BR /&gt;CUST_ACCNT_CD ,&lt;BR /&gt;CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_SUMM&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_PERIOD_TYPE = 'Y'&lt;BR /&gt;AND (&lt;BR /&gt;(&lt;BR /&gt;CUST_YEAR = LOC_MAX_YEAR-1&lt;BR /&gt;AND CUST_PERIOD = (&lt;BR /&gt;SELECT MAX(CUST_PERIOD)&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_SUMM&lt;BR /&gt;WHERE CUST_YEAR = LOC_MAX_YEAR-1&lt;BR /&gt;)&lt;BR /&gt;)&lt;BR /&gt;OR (&lt;BR /&gt;CUST_YEAR = LOC_MAX_YEAR&lt;BR /&gt;AND CUST_PERIOD = LOC_MAX_PERIOD&lt;BR /&gt;)&lt;BR /&gt;);----&lt;/P&gt; 
&lt;P&gt;---------------------------------------------------------------------------------&lt;BR /&gt;--------------------------------IF MIN YEAR IS SAME AS MAX YEAR-----------------&lt;BR /&gt;---------------------------------------------------------------------------------&lt;/P&gt; 
&lt;P&gt;ELSEIF LOC_MIN_YEAR = LOC_MAX_YEAR THEN&lt;/P&gt; 
&lt;P&gt;INSERT INTO VMRCTTA1.VMRRCUST_DETAILS(CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV)&lt;BR /&gt;--------------------------------------------------------------------------------&lt;BR /&gt;SELECT DISTINCT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_SUMM&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_PERIOD_TYPE = 'Y'&lt;BR /&gt;AND CUST_YEAR = LOC_MAX_YEAR&lt;BR /&gt;--------------------------&lt;BR /&gt;MINUS&lt;BR /&gt;----------------------------&lt;BR /&gt;SELECT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MAX_YEAR;----&lt;BR /&gt;------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;-----------------IF MIN YEAR IS NOT SAME AS MAX YEAR-RECORD AND FOR LATEST YEAR DATA IS NOT AVAILABLE------------&lt;BR /&gt;--------------------------------------------------------------------------------------------------------------------&lt;/P&gt; 
&lt;P&gt;ELSEIF LOC_MIN_YEAR != LOC_MAX_YEAR AND LOC_REC1 IS NULL AND (LOC_MAX_YEAR - LOC_MIN_YEAR &amp;lt;= 1) THEN&lt;/P&gt; 
&lt;P&gt;INSERT INTO VMRCTTA1.VMRRCUST_DETAILS(CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV)&lt;BR /&gt;--------------------------------------------------------------------------------&lt;BR /&gt;SELECT DISTINCT CUST_CNTRY_CD ,&lt;BR /&gt;CUST_YEAR ,&lt;BR /&gt;CUST_GSSN_CD ,&lt;BR /&gt;CUST_ACCNT_CD ,&lt;BR /&gt;CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_SUMM&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_PERIOD_TYPE = 'Y'&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR&lt;BR /&gt;--------------------------&lt;BR /&gt;MINUS&lt;BR /&gt;----------------------------&lt;BR /&gt;SELECT CUST_CNTRY_CD ,&lt;BR /&gt;CUST_YEAR ,&lt;BR /&gt;CUST_GSSN_CD ,&lt;BR /&gt;CUST_ACCNT_CD ,&lt;BR /&gt;CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR;----&lt;BR /&gt;----------------------------------------------------------&lt;BR /&gt;----------------------------------------------------------&lt;BR /&gt;----------------------------------------------------------&lt;BR /&gt;INSERT INTO VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;(&lt;BR /&gt;CUST_CNTRY_CD,&lt;BR /&gt;CUST_YEAR,&lt;BR /&gt;CUST_GSSN_CD,&lt;BR /&gt;CUST_ACCNT_CD,&lt;BR /&gt;CUST_CURR_VISITS,&lt;BR /&gt;CUST_VEH_THRPT_METHD_TYP,&lt;BR /&gt;CUST_VEH_THRPT_METHD,&lt;BR /&gt;CUST_INACCESSBLE_POTENTL,&lt;BR /&gt;CUST_POTENTL_METHD,&lt;BR /&gt;CUST_MB_VEH_THRPT,&lt;BR /&gt;CUST_VEH_THRPT,CUST_#_PLATFRM,&lt;BR /&gt;CUST_MB_SHARE,CUST_NO_OF_WORKERS,&lt;BR /&gt;CUST_COMMNTS,&lt;BR /&gt;CUST_MKT_DIV,&lt;BR /&gt;CUST_VISIT_UPDT_DT&lt;BR /&gt;)&lt;BR /&gt;SELECT&lt;BR /&gt;CS.CUST_CNTRY_CD,&lt;BR /&gt;CS.CUST_YEAR+1,&lt;BR /&gt;CS.CUST_GSSN_CD,&lt;BR /&gt;CS.CUST_ACCNT_CD,&lt;BR /&gt;CD.CUST_CURR_VISITS,&lt;BR /&gt;CASE WHEN CD.CUST_VEH_THRPT_METHD_TYP IS NULL OR CD.CUST_VEH_THRPT_METHD_TYP = '' THEN 'MANUAL' ELSE CD.CUST_VEH_THRPT_METHD_TYP END,&lt;BR /&gt;CD.CUST_VEH_THRPT_METHD,&lt;BR /&gt;CD.CUST_INACCESSBLE_POTENTL,&lt;BR /&gt;CASE WHEN CD.CUST_POTENTL_METHD IS NULL OR CD.CUST_POTENTL_METHD ='' THEN 'WAREGROUP' ELSE CD.CUST_POTENTL_METHD END,&lt;BR /&gt;CD.CUST_MB_VEH_THRPT,&lt;BR /&gt;CD.CUST_VEH_THRPT,&lt;BR /&gt;CD.CUST_#_PLATFRM,&lt;BR /&gt;CD.CUST_MB_SHARE,&lt;BR /&gt;CD.CUST_NO_OF_WORKERS,&lt;BR /&gt;CD.CUST_COMMNTS,&lt;BR /&gt;CS.CUST_MKT_DIV,&lt;BR /&gt;CD.CUST_VISIT_UPDT_DT&lt;/P&gt; 
&lt;P&gt;FROM&lt;BR /&gt;(&lt;BR /&gt;SELECT DISTINCT CUST_CNTRY_CD ,&lt;BR /&gt;LOC_MIN_YEAR AS CUST_YEAR ,&lt;BR /&gt;CUST_GSSN_CD ,&lt;BR /&gt;CUST_ACCNT_CD,&lt;BR /&gt;CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_SUMM&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_PERIOD_TYPE = 'Y'&lt;BR /&gt;AND CUST_YEAR = LOC_MAX_YEAR&lt;BR /&gt;) CS LEFT JOIN VMRCTTA1.VMRRCUST_DETAILS CD&lt;BR /&gt;ON CS.CUST_CNTRY_CD = CD.CUST_CNTRY_CD&lt;BR /&gt;AND CS.CUST_YEAR = CD.CUST_YEAR&lt;BR /&gt;AND CS.CUST_GSSN_CD = CD.CUST_GSSN_CD&lt;BR /&gt;AND CS.CUST_ACCNT_CD = CD.CUST_ACCNT_CD&lt;BR /&gt;AND CS.CUST_MKT_DIV=CD.CUST_MKT_DIV&lt;BR /&gt;WHERE CS.CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CS.CUST_YEAR = LOC_MIN_YEAR;----&lt;/P&gt; 
&lt;P&gt;UPDATE VMRCTTA1.VMRRCUST_DETAILS SET CUST_CURR_VISITS = 0 WHERE CUST_YEAR = LOC_MAX_YEAR AND CUST_CNTRY_CD = LOC_CNTRY;----&lt;/P&gt; 
&lt;P&gt;--------------------------------------------------------------------------------&lt;/P&gt; 
&lt;P&gt;ELSEIF LOC_MIN_YEAR != LOC_MAX_YEAR AND LOC_REC1 IS NOT NULL AND (LOC_MAX_YEAR - LOC_MIN_YEAR &amp;lt;= 1) THEN&lt;BR /&gt;INSERT INTO VMRCTTA1.VMRRCUST_DETAILS(CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV)&lt;BR /&gt;--------------------------------------------------------------------------------&lt;BR /&gt;SELECT DISTINCT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_SUMM&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_PERIOD_TYPE = 'Y'&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR&lt;BR /&gt;--------------------------&lt;BR /&gt;MINUS&lt;BR /&gt;----------------------------&lt;BR /&gt;SELECT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR&lt;/P&gt; 
&lt;P&gt;UNION&lt;/P&gt; 
&lt;P&gt;SELECT DISTINCT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_SUMM&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_PERIOD_TYPE = 'Y'&lt;BR /&gt;AND CUST_YEAR = LOC_MAX_YEAR&lt;BR /&gt;--------------------------&lt;BR /&gt;MINUS&lt;BR /&gt;----------------------------&lt;BR /&gt;SELECT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MAX_YEAR&lt;/P&gt; 
&lt;P&gt;UNION&lt;/P&gt; 
&lt;P&gt;SELECT CUST_CNTRY_CD,LOC_MAX_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV ---recently added&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR&lt;/P&gt; 
&lt;P&gt;MINUS&lt;/P&gt; 
&lt;P&gt;SELECT CUST_CNTRY_CD,LOC_MAX_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MAX_YEAR&lt;/P&gt; 
&lt;P&gt;;----&lt;/P&gt; 
&lt;P&gt;&lt;BR /&gt;ELSEIF (LOC_MAX_YEAR - LOC_MIN_YEAR )&amp;gt; 1 THEN&lt;BR /&gt;--------------------------------------------------------------------------------&lt;BR /&gt;WHILE LOC_MIN_YEAR &amp;lt; LOC_MAX_YEAR DO&lt;/P&gt; 
&lt;P&gt;INSERT INTO VMRCTTA1.VMRRCUST_DETAILS(CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV)&lt;BR /&gt;--------------------------------------------------------------------------------&lt;BR /&gt;SELECT DISTINCT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_SUMM&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_PERIOD_TYPE = 'Y'&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR&lt;BR /&gt;--------------------------&lt;BR /&gt;MINUS&lt;BR /&gt;----------------------------&lt;BR /&gt;SELECT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR&lt;/P&gt; 
&lt;P&gt;UNION&lt;/P&gt; 
&lt;P&gt;SELECT DISTINCT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_SUMM&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_PERIOD_TYPE = 'Y'&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR + 1&lt;BR /&gt;--------------------------&lt;BR /&gt;MINUS&lt;BR /&gt;----------------------------&lt;BR /&gt;SELECT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR + 1&lt;/P&gt; 
&lt;P&gt;UNION&lt;/P&gt; 
&lt;P&gt;SELECT CUST_CNTRY_CD,LOC_MIN_YEAR + 1,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV ---recently added&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR&lt;/P&gt; 
&lt;P&gt;MINUS&lt;/P&gt; 
&lt;P&gt;SELECT CUST_CNTRY_CD,LOC_MIN_YEAR + 1,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR + 1 ;----&lt;/P&gt;</description>
    <pubDate>Sat, 16 Nov 2024 04:03:42 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2024-11-16T04:03:42Z</dc:date>
    <item>
      <title>Need approach on design of implementing If-elseif content SQL query in Talend</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Need-approach-on-design-of-implementing-If-elseif-content-SQL/m-p/2265744#M45186</link>
      <description>&lt;P&gt;Hi Team,&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Can you please suggest approach to design below SQL query in Talend . There are different query based on condition check in If -else if.&lt;/P&gt; 
&lt;P&gt;Please suggest.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;IF LOC_REC IS NULL AND (LOC_MAX_YEAR - LOC_MIN_YEAR &amp;lt;= 1) THEN&lt;/P&gt; 
&lt;P&gt;INSERT INTO VMRCTTA1.VMRRCUST_DETAILS(CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV)&lt;BR /&gt;SELECT CUST_CNTRY_CD ,&lt;BR /&gt;CUST_YEAR ,&lt;BR /&gt;CUST_GSSN_CD ,&lt;BR /&gt;CUST_ACCNT_CD ,&lt;BR /&gt;CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_SUMM&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_PERIOD_TYPE = 'Y'&lt;BR /&gt;AND (&lt;BR /&gt;(&lt;BR /&gt;CUST_YEAR = LOC_MAX_YEAR-1&lt;BR /&gt;AND CUST_PERIOD = (&lt;BR /&gt;SELECT MAX(CUST_PERIOD)&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_SUMM&lt;BR /&gt;WHERE CUST_YEAR = LOC_MAX_YEAR-1&lt;BR /&gt;)&lt;BR /&gt;)&lt;BR /&gt;OR (&lt;BR /&gt;CUST_YEAR = LOC_MAX_YEAR&lt;BR /&gt;AND CUST_PERIOD = LOC_MAX_PERIOD&lt;BR /&gt;)&lt;BR /&gt;);----&lt;/P&gt; 
&lt;P&gt;---------------------------------------------------------------------------------&lt;BR /&gt;--------------------------------IF MIN YEAR IS SAME AS MAX YEAR-----------------&lt;BR /&gt;---------------------------------------------------------------------------------&lt;/P&gt; 
&lt;P&gt;ELSEIF LOC_MIN_YEAR = LOC_MAX_YEAR THEN&lt;/P&gt; 
&lt;P&gt;INSERT INTO VMRCTTA1.VMRRCUST_DETAILS(CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV)&lt;BR /&gt;--------------------------------------------------------------------------------&lt;BR /&gt;SELECT DISTINCT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_SUMM&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_PERIOD_TYPE = 'Y'&lt;BR /&gt;AND CUST_YEAR = LOC_MAX_YEAR&lt;BR /&gt;--------------------------&lt;BR /&gt;MINUS&lt;BR /&gt;----------------------------&lt;BR /&gt;SELECT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MAX_YEAR;----&lt;BR /&gt;------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;-----------------IF MIN YEAR IS NOT SAME AS MAX YEAR-RECORD AND FOR LATEST YEAR DATA IS NOT AVAILABLE------------&lt;BR /&gt;--------------------------------------------------------------------------------------------------------------------&lt;/P&gt; 
&lt;P&gt;ELSEIF LOC_MIN_YEAR != LOC_MAX_YEAR AND LOC_REC1 IS NULL AND (LOC_MAX_YEAR - LOC_MIN_YEAR &amp;lt;= 1) THEN&lt;/P&gt; 
&lt;P&gt;INSERT INTO VMRCTTA1.VMRRCUST_DETAILS(CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV)&lt;BR /&gt;--------------------------------------------------------------------------------&lt;BR /&gt;SELECT DISTINCT CUST_CNTRY_CD ,&lt;BR /&gt;CUST_YEAR ,&lt;BR /&gt;CUST_GSSN_CD ,&lt;BR /&gt;CUST_ACCNT_CD ,&lt;BR /&gt;CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_SUMM&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_PERIOD_TYPE = 'Y'&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR&lt;BR /&gt;--------------------------&lt;BR /&gt;MINUS&lt;BR /&gt;----------------------------&lt;BR /&gt;SELECT CUST_CNTRY_CD ,&lt;BR /&gt;CUST_YEAR ,&lt;BR /&gt;CUST_GSSN_CD ,&lt;BR /&gt;CUST_ACCNT_CD ,&lt;BR /&gt;CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR;----&lt;BR /&gt;----------------------------------------------------------&lt;BR /&gt;----------------------------------------------------------&lt;BR /&gt;----------------------------------------------------------&lt;BR /&gt;INSERT INTO VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;(&lt;BR /&gt;CUST_CNTRY_CD,&lt;BR /&gt;CUST_YEAR,&lt;BR /&gt;CUST_GSSN_CD,&lt;BR /&gt;CUST_ACCNT_CD,&lt;BR /&gt;CUST_CURR_VISITS,&lt;BR /&gt;CUST_VEH_THRPT_METHD_TYP,&lt;BR /&gt;CUST_VEH_THRPT_METHD,&lt;BR /&gt;CUST_INACCESSBLE_POTENTL,&lt;BR /&gt;CUST_POTENTL_METHD,&lt;BR /&gt;CUST_MB_VEH_THRPT,&lt;BR /&gt;CUST_VEH_THRPT,CUST_#_PLATFRM,&lt;BR /&gt;CUST_MB_SHARE,CUST_NO_OF_WORKERS,&lt;BR /&gt;CUST_COMMNTS,&lt;BR /&gt;CUST_MKT_DIV,&lt;BR /&gt;CUST_VISIT_UPDT_DT&lt;BR /&gt;)&lt;BR /&gt;SELECT&lt;BR /&gt;CS.CUST_CNTRY_CD,&lt;BR /&gt;CS.CUST_YEAR+1,&lt;BR /&gt;CS.CUST_GSSN_CD,&lt;BR /&gt;CS.CUST_ACCNT_CD,&lt;BR /&gt;CD.CUST_CURR_VISITS,&lt;BR /&gt;CASE WHEN CD.CUST_VEH_THRPT_METHD_TYP IS NULL OR CD.CUST_VEH_THRPT_METHD_TYP = '' THEN 'MANUAL' ELSE CD.CUST_VEH_THRPT_METHD_TYP END,&lt;BR /&gt;CD.CUST_VEH_THRPT_METHD,&lt;BR /&gt;CD.CUST_INACCESSBLE_POTENTL,&lt;BR /&gt;CASE WHEN CD.CUST_POTENTL_METHD IS NULL OR CD.CUST_POTENTL_METHD ='' THEN 'WAREGROUP' ELSE CD.CUST_POTENTL_METHD END,&lt;BR /&gt;CD.CUST_MB_VEH_THRPT,&lt;BR /&gt;CD.CUST_VEH_THRPT,&lt;BR /&gt;CD.CUST_#_PLATFRM,&lt;BR /&gt;CD.CUST_MB_SHARE,&lt;BR /&gt;CD.CUST_NO_OF_WORKERS,&lt;BR /&gt;CD.CUST_COMMNTS,&lt;BR /&gt;CS.CUST_MKT_DIV,&lt;BR /&gt;CD.CUST_VISIT_UPDT_DT&lt;/P&gt; 
&lt;P&gt;FROM&lt;BR /&gt;(&lt;BR /&gt;SELECT DISTINCT CUST_CNTRY_CD ,&lt;BR /&gt;LOC_MIN_YEAR AS CUST_YEAR ,&lt;BR /&gt;CUST_GSSN_CD ,&lt;BR /&gt;CUST_ACCNT_CD,&lt;BR /&gt;CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_SUMM&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_PERIOD_TYPE = 'Y'&lt;BR /&gt;AND CUST_YEAR = LOC_MAX_YEAR&lt;BR /&gt;) CS LEFT JOIN VMRCTTA1.VMRRCUST_DETAILS CD&lt;BR /&gt;ON CS.CUST_CNTRY_CD = CD.CUST_CNTRY_CD&lt;BR /&gt;AND CS.CUST_YEAR = CD.CUST_YEAR&lt;BR /&gt;AND CS.CUST_GSSN_CD = CD.CUST_GSSN_CD&lt;BR /&gt;AND CS.CUST_ACCNT_CD = CD.CUST_ACCNT_CD&lt;BR /&gt;AND CS.CUST_MKT_DIV=CD.CUST_MKT_DIV&lt;BR /&gt;WHERE CS.CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CS.CUST_YEAR = LOC_MIN_YEAR;----&lt;/P&gt; 
&lt;P&gt;UPDATE VMRCTTA1.VMRRCUST_DETAILS SET CUST_CURR_VISITS = 0 WHERE CUST_YEAR = LOC_MAX_YEAR AND CUST_CNTRY_CD = LOC_CNTRY;----&lt;/P&gt; 
&lt;P&gt;--------------------------------------------------------------------------------&lt;/P&gt; 
&lt;P&gt;ELSEIF LOC_MIN_YEAR != LOC_MAX_YEAR AND LOC_REC1 IS NOT NULL AND (LOC_MAX_YEAR - LOC_MIN_YEAR &amp;lt;= 1) THEN&lt;BR /&gt;INSERT INTO VMRCTTA1.VMRRCUST_DETAILS(CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV)&lt;BR /&gt;--------------------------------------------------------------------------------&lt;BR /&gt;SELECT DISTINCT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_SUMM&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_PERIOD_TYPE = 'Y'&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR&lt;BR /&gt;--------------------------&lt;BR /&gt;MINUS&lt;BR /&gt;----------------------------&lt;BR /&gt;SELECT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR&lt;/P&gt; 
&lt;P&gt;UNION&lt;/P&gt; 
&lt;P&gt;SELECT DISTINCT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_SUMM&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_PERIOD_TYPE = 'Y'&lt;BR /&gt;AND CUST_YEAR = LOC_MAX_YEAR&lt;BR /&gt;--------------------------&lt;BR /&gt;MINUS&lt;BR /&gt;----------------------------&lt;BR /&gt;SELECT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MAX_YEAR&lt;/P&gt; 
&lt;P&gt;UNION&lt;/P&gt; 
&lt;P&gt;SELECT CUST_CNTRY_CD,LOC_MAX_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV ---recently added&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR&lt;/P&gt; 
&lt;P&gt;MINUS&lt;/P&gt; 
&lt;P&gt;SELECT CUST_CNTRY_CD,LOC_MAX_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MAX_YEAR&lt;/P&gt; 
&lt;P&gt;;----&lt;/P&gt; 
&lt;P&gt;&lt;BR /&gt;ELSEIF (LOC_MAX_YEAR - LOC_MIN_YEAR )&amp;gt; 1 THEN&lt;BR /&gt;--------------------------------------------------------------------------------&lt;BR /&gt;WHILE LOC_MIN_YEAR &amp;lt; LOC_MAX_YEAR DO&lt;/P&gt; 
&lt;P&gt;INSERT INTO VMRCTTA1.VMRRCUST_DETAILS(CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV)&lt;BR /&gt;--------------------------------------------------------------------------------&lt;BR /&gt;SELECT DISTINCT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_SUMM&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_PERIOD_TYPE = 'Y'&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR&lt;BR /&gt;--------------------------&lt;BR /&gt;MINUS&lt;BR /&gt;----------------------------&lt;BR /&gt;SELECT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR&lt;/P&gt; 
&lt;P&gt;UNION&lt;/P&gt; 
&lt;P&gt;SELECT DISTINCT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_SUMM&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_PERIOD_TYPE = 'Y'&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR + 1&lt;BR /&gt;--------------------------&lt;BR /&gt;MINUS&lt;BR /&gt;----------------------------&lt;BR /&gt;SELECT CUST_CNTRY_CD,CUST_YEAR,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR + 1&lt;/P&gt; 
&lt;P&gt;UNION&lt;/P&gt; 
&lt;P&gt;SELECT CUST_CNTRY_CD,LOC_MIN_YEAR + 1,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV ---recently added&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR&lt;/P&gt; 
&lt;P&gt;MINUS&lt;/P&gt; 
&lt;P&gt;SELECT CUST_CNTRY_CD,LOC_MIN_YEAR + 1,CUST_GSSN_CD,CUST_ACCNT_CD,CUST_MKT_DIV&lt;BR /&gt;FROM VMRCTTA1.VMRRCUST_DETAILS&lt;BR /&gt;WHERE CUST_CNTRY_CD = LOC_CNTRY&lt;BR /&gt;AND CUST_YEAR = LOC_MIN_YEAR + 1 ;----&lt;/P&gt;</description>
      <pubDate>Sat, 16 Nov 2024 04:03:42 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Need-approach-on-design-of-implementing-If-elseif-content-SQL/m-p/2265744#M45186</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2024-11-16T04:03:42Z</dc:date>
    </item>
    <item>
      <title>Re: Need approach on design of implementing If-elseif content SQL query in Talend</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Need-approach-on-design-of-implementing-If-elseif-content-SQL/m-p/2265745#M45187</link>
      <description>&lt;P&gt;Can you give a little more context to this? Do you want this to be replicated in a Talend Job or do you want to simply run this in a Talend Job? Both are possible. To replicate this in a Talend Job will take a lot more information to help you do it. To be honest, it is something that might be quite tricky without having access to the data. To run this in a Talend component, you would simply use a tDBRow and add BEGIN and END statements. Well, there may be a little more required, but essentially the above is what you would do.&lt;/P&gt;</description>
      <pubDate>Thu, 21 Nov 2019 22:06:26 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Need-approach-on-design-of-implementing-If-elseif-content-SQL/m-p/2265745#M45187</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-11-21T22:06:26Z</dc:date>
    </item>
  </channel>
</rss>

