zoukankan      html  css  js  c++  java
  • decode和case when then 当条件使用的案例

    SELECT DISTINCT A.C_PORT_CODE,
    A.C_IE_CODE,
    A.D_TRADE,
    decode(a.c_ie_code,'QTFY',decode(trim(a.N_MONEY_REC),0,decode(trim(a.N_MONEY_ACC),0,decode( trim(a.n_MONEY_COP),0,decode(trim(a.n_MONEY_PAY),0,0,1),1),1),1),1) ssss,
    A.C_DC_CODE,
    A.N_MONEY_REC,
    A.N_MONEY_ACC,
    A.D_TRADE_YSS,
    A.D_TRADE_YSE,
    A.N_MONEY_COP,
    A.N_MONEY_PAY,
    A.D_TRADE_YFS,
    A.D_TRADE_YFE,
    A.C_CA_CODE,
    B.C_DAI_CODE_REC,
    B.C_DAI_CODE_COP,
    NVL(D.C_FEE_CODE, trim(a.c_fee_code)) AS C_FEE_CODE,
    A.C_TD_CHAN_CODE,
    C.C_DV_ACC_TYPE,
    A.C_YWBH,
    A.C_REMARK,
    NVL(SEC.C_SEC_CODE, ' ') AS C_SEC_CODE,
    CASE
    WHEN SEC.C_SEC_CODE IS NOT NULL THEN
    SEC.C_SEC_VAR_CODE
    ELSE
    ' '
    END AS C_SEC_VAR_CODE,
    CASE
    WHEN SEC.C_SEC_CODE IS NOT NULL THEN
    SEC.C_MKT_CODE
    ELSE
    ' '
    END AS C_MKT_CODE,
    CASE
    WHEN SEC.C_SEC_CODE IS NOT NULL THEN
    'PT'
    ELSE
    ' '
    END AS C_DTA_CODE,
    CASE
    WHEN SEC.C_SEC_CODE IS NOT NULL THEN
    'SS'
    ELSE
    ' '
    END AS C_DV_ISSUE_MODE,
    CASE
    WHEN SEC.C_SEC_CODE IS NOT NULL THEN
    'IC_TD'
    ELSE
    ' '
    END AS C_DV_INVEST_CLS
    FROM T_D_OD_SZJZ_DATA A
    LEFT JOIN T_S_IE_ITEM B
    ON trim(A.C_IE_CODE) = B.C_IE_CODE
    LEFT JOIN T_P_BI_CASH_ACC C
    ON TRIM(A.C_CA_CODE) = C.C_CA_CODE
    LEFT JOIN T_P_BI_IE D
    on (trim(a.c_fee_code) || '_' || trim(a.C_YWBH) = D.c_fee_code)
    or (trim(a.C_YWBH) is null and trim(a.c_fee_code) = D.c_fee_code)
    LEFT JOIN T_P_SV_SEC_BASE SEC
    ON A.C_SEC_CODE = SEC.C_SEC_CODE
    WHERE trim(A.C_PORT_CODE) IN ('000327')
    AND A.D_TRADE >= date'2016-12-28'
    and A.D_TRADE <= date'2016-12-28'
    and trim(A.C_IE_CODE) not in ('CPXS_ZJTQ', 'CPXS_ZJZJ', 'SZJZ_QTSZ')

    and
    case --case when实现
    when a.c_ie_code='QTFY' and trim(a.N_MONEY_REC)=0 and trim(a.N_MONEY_ACC)=0 AND trim(a.n_MONEY_COP)=0 AND trim(a.n_MONEY_PAY)=0
    then 0
    else 1
    end=1
    /*decode同样可以实现*/
    decode(a.c_ie_code,'QTFY',decode(trim(a.N_MONEY_REC),0,decode(trim(a.N_MONEY_ACC),0,decode( trim(a.n_MONEY_COP),0,decode(trim(a.n_MONEY_PAY),0,0,1),1),1),1),1)=1

    场景: 当为and ( a.c_ie_code='QTFY' and trim(a.N_MONEY_REC)=0 and trim(a.N_MONEY_ACC)=0 AND trim(a.n_MONEY_COP)=0 AND trim(a.n_MONEY_PAY)=0 )时数据不查询

  • 相关阅读:
    android WebView 加载html5
    android 摄像头的使用
    android 传感器类 sensor
    关于java的一些东西
    android 网络连接管理机制
    利用Layout实现Button的不规则布局
    Android 推送通知指南(转载)
    android开发小问题随记(附1)
    ubuntu下搭建android开发环境(转载)
    北斗小辣椒双核升级攻略之一
  • 原文地址:https://www.cnblogs.com/wglwgl/p/6433645.html
Copyright © 2011-2022 走看看