Oracle case when 用法

当使用delphi  的adoquery连接oracle数据库时 要注意了:  SQL 中包含 多个case when 时一 定要加括弧呀 否则直接报异常或cpu调试
问题很诡异 同样的SQL 放到PL/SQL里不加括弧就可以执行 一直以为PL里能执行的adoquery也能用 现在看来不是 算是经验吧


SQL 示例如下
select a.MARC_REC_NO,(case marc_use_flag  when '1' then '订购'  when '2' then '待编'  when '3' then '已编'  when '4' then '审校'  end) as marc_use_flag,MARC_TYPE,CATA_OPER,CATA_DATE,LANG_CODE,DOC_TYPE_CODE,M_CALL_NO,M_TITLE,M_AUTHOR,M_PUBLISHER,M_PUB_YEAR,M_ISBN ,b.ASORD_NO,GET_MODE_CODE,CARRIER_CODE,PUBL_FREQ,KIND_NO,(case PERI_TYPE   when '0' then '正常刊'   when '1' then '改名刊'   when '2' then '停刊'   when '3' then '停定刊' end) as PERI_TYPE,PERI_ORD_QTY,PERI_PRICE,PERI_TOTAL_PRICE,REMARK,(case ORD_FLAG   when '0' then '未发订'   when '1' then '已发订' end) as ORD_FLAG from  marc  a ,PERI_ORD_DETL b where a.marc_rec_no =b.marc_rec_no and b.peri_ord_cata_id='4BE9F5BA819749C984CE13D922E22C87'










  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值