decode可以使用like么?有一组数据
A1        A2
qwr       2
gssdg     3
df        9
gdg       8
fd        4写一个view,想实现一个功能,当A1含有g的时候,把A2设置为0. 当A1含有f的时候,设置A2为00.其余就是本来的A2。两个条件不会同事出现的,这种情况不用考虑。

解决方案 »

  1.   


    select A1,(case when A1 like '%g%' then 0
                    when A1 like '%f%' then 00
                    else A2 end) A2 from tab
      

  2.   

    -- decode 函数不能用 like ,也不能比较范围值,只能对比具体值!-- 要用 like 或 where ... between ... and 的话,只能考虑用 case ... when 代替!
      

  3.   

    不能用like   可以考虑instr 但是需要注意  decode只能判断一个值  也就是 一般都是判断  如果存在f 怎么怎么办可以试试 ||  一起判断俩值~~
    当然 还是case比较方便~
      

  4.   

    虑用 case ... when 代替