sql >> Database >  >> RDS >> Oracle

Selecteer twee kolommen uit dezelfde tabel met verschillende WHERE-voorwaarden

U zoekt een gefilterd aggregaat:

SELECT COUNT(DISTINCT 
             case when 
                MODIFIED_DATE BETWEEN TO_DATE('{RUN_DATE_YYYYMMDD}','YYYYMMDD') - 56 
                                  AND TO_DATE('{RUN_DATE_YYYYMMDD}','YYYYMMDD') - 49
               then CASE_ID 
             end) as c1,
        COUNT(DISTINCT 
               case when 
                  MODIFIED_DATE BETWEEN TO_DATE('{RUN_DATE_YYYYMMDD}','YYYYMMDD')-49  
                                    AND TO_DATE('{RUN_DATE_YYYYMMDD}','YYYYMMDD')-42 
                  then CASE_ID 
               end) as c2
from t1 
WHERE MODIFIED_DATE 
         BETWEEN TO_DATE('{RUN_DATE_YYYYMMDD}','YYYYMMDD') - 56 
             AND TO_DATE('{RUN_DATE_YYYYMMDD}','YYYYMMDD') - 42 

Merk op dat de WHERE clausule moet nu beide intervallen dekken.



  1. read_sql-query retourneert een leeg dataframe nadat ik parameters heb doorgegeven als een dictaat in python panda's

  2. Waarom is de SHOW TABLE STATUS van innodb zo onbetrouwbaar?

  3. mysql voor python 2. 7 zegt Python v2.7 niet gevonden

  4. bestelpost volgens aangepaste arraypositie