please convert this query to postgresql which is already in oracle

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • phani kumar NSR
    New Member
    • Jan 2011
    • 1

    please convert this query to postgresql which is already in oracle

    i have a query which is in oracle pls convert and give me in postgresql format.

    SELECT MST.TW_TRAN_NO ,NVL(DEPT_RCPT_ NO,'--'),CONSUMER_NO, NVL(CONSUMER_NA ME,'---'),
    UPPER( DECODE (PAY_MODE,'C',' Cash','D','DD', 'CD','CASH/DD','Q','Chq',' R','Card')),
    TOT_AMT,DEPT_SH ORT_DESC,TRAN_S TATUS,NVL(USER_ CHARGES,0),shif t_code,
    NVL(DECODE(PAY_ MODE,'R',(NVL(C HQDD_CARD_AMT,0 )-NVL(TOT_AMT,0)-
    NVL(USER_CHARGE S,0))),0)
    FROM TW_TRANS MST,TW_DEPT_MST , TW_TRANS_PAY_DT LS DTL WHERE
    MST.TW_TRAN_NO= DTL.TW_TRAN_NO( +) AND
    MST.DEPT_CODE=T W_DEPT_MST.DEPT _CODE
    AND MST.TW_TRAN_DAT E =TO_DATE('26-11-2010','dd-mm-yyyy')
    AND STAFF_CODE='OPR 237'
    AND CENTRE_CODE='AK PM'
    AND TRAN_STATUS='N' ORDER BY MST.TW_TRAN_N


    i tried but the result is not correct in postgresql:

    The query i tried is :

    SELECT MST.TW_TRAN_NO, COALESCE(DEPT_R CPT_NO,'--'),CONSUMER_NO, COALESCE(CONSUM ER_NAME,'---'),TOT_AMT,DEPT _SHORT_DESC,TRA N_STATUS,COALES CE(USER_CHARGES ,0),shift_code,
    coalesce(case when PAY_MODE = 'R' then (coalesce(CHQDD _CARD_AMT,0)-coalesce(TOT_AM T,0)- coalesce(USER_C HARGES,0)) end ,0),
    UPPER(
    CASE WHEN PAY_MODE='C' THEN 'CASH'
    WHEN PAY_MODE='D' THEN 'DD'
    WHEN PAY_MODE='CD' THEN 'CASH/DD'
    WHEN PAY_MODE='Q' THEN 'CHQ'
    WHEN PAY_MODE='R' THEN 'CARD'
    END)
    FROM CSC_TRANS MST,CSC_DEPT_MS T, CSC_TRANS_PAY_D TLS DTL WHERE MST.TW_TRAN_NO= DTL.TW_TRAN_NO outer join a on AND MST.DEPT_CODE=C SC_DEPT_MST.DEP T_CODE
    AND MST.TW_TRAN_DAT E =TO_DATE('2010-11-26','YYYY-MM-DD') AND STAFF_CODE='OPR 237' AND CENTRE_CODE='AK PM' AND TRAN_STATUS='N' ORDER BY MST.TW_TRAN_NO


    Thanks & Regards,

    Phani Kumar.
Working...