zoukankan      html  css  js  c++  java
  • oracle 处理字段值‘1,2,3’对应的实际值的处理方法

    参考SQL:
    select dbdkcplx
    , (select to_char(wm_concat(name)) from dict_dbdkcplx cplx where a.dbdkcplx = cplx.code or a.dbdkcplx like '%, ' || cplx.code || ', %' or a.dbdkcplx like '%, ' || cplx.code or a.dbdkcplx like cplx.code || ', %' ) dbdkcplx1 from gsjk2018.v_proj_particulars_dflx a; 自己用本地表测试: select dbdkcplx, (select to_char(wm_concat(cplx.dictname)) from base_dict_entry cplx where (a.dbdkcplx = cplx.dictid or a.dbdkcplx like '%, ' || cplx.dictid || ', %' or a.dbdkcplx like '%, ' || cplx.dictid or a.dbdkcplx like cplx.dictid || ', %') and dicttypeid = 'FMS_GUARANTEED_LOANS_TYPES' ) dbdkcplx1 from (select '1, 2, 3' dbdkcplx from dual)a;

    根据1,2,3查出的实际对应的值

    字典表数据如下:

     实际案例参考:

    select
    (
        select to_char(wm_concat(bde.dictname)) from base_dict_entry bde where
        (
               jsonpkg.getval(pci.contractsummary,'guranteeMethod') = to_char(bde.dictid) 
            or jsonpkg.getval(pci.contractsummary,'guranteeMethod') like '%, ' || bde.dictid || ', %' 
            or jsonpkg.getval(pci.contractsummary,'guranteeMethod') like '%, ' || bde.dictid 
            or jsonpkg.getval(pci.contractsummary,'guranteeMethod') like bde.dictid || ', %'
        )
        and dicttypeid = 'GURANTEE_METHOD'
    )as guranteeMethod  
    FROM
    (
        select  * from v_proj_baseAndParticipant p WHERE  p.BUSSTYPE != '07' and p.PROJSTAGE > 3005
        and p.REGUARANT!=1 and p.CHILDBUSSTYPE!='SY_QYZ' and p.BUSSTYPE != '06'
    )p
    LEFT OUTER JOIN legal_pactset_info  lpi  on  p.PROJID = lpi.PROJID
    LEFT OUTER JOIN proj_contract_info  pci  on  pci.contractid = lpi.contractid;

    end

  • 相关阅读:
    HBase api
    使用memcached缓存 替代solr中的LRUCache缓存
    Solrj
    在Solr中配置中文分词IKAnalyzer
    (转载)怎样让自己内心强大起来?
    (转载)Linux一句话精彩
    (转载)C++创建对象的两种方法
    (转载)puremvc框架之proxy
    (转载)AS3领航系列教程 之 AS3程序的入口
    (转载)Flash Number 数据类型
  • 原文地址:https://www.cnblogs.com/xh_Blog/p/14472746.html
Copyright © 2011-2022 走看看