表名:KAKAKU
字段名: KOJI_CD   CHAR(5)
       A1        DATE
       A2        DATE
       A3        DATE
       A4        DATE
       A5        DATE外部变量: B1,B2
如何处理一下设计:
  1. A1 IS NOT NULL 的时候
   A1 >= B1 AND A1 <= B2
  2. A2 IS NOT NULL 的时候
   A2 >= B1 AND A2 <= B2
  3. A3 IS NOT NULL 的时候
   A3 >= B1 AND A3 <= B2
  4. A4 IS NOT NULL 的时候
   A4 >= B1 AND A4 <= B2
 ......
 .......请问以上如何写sql文。环境是,oracle +vb.net

解决方案 »

  1.   

    Decode只支持值比较,所以只用Decode应该不能实现。
    建议式1~4在vb里处理,拼接SQL语句字符串。
      

  2.   

    A1~A5都是表的字段, VB里处理也不行的呀
      

  3.   

    可以这样处理!!!将你的逻辑处理部分写成一个Oracle函数,函数的返回值为整数,这样你就可以使用Decode函数了!!!或者使用Decode嵌套功能(可能要嵌套好几层,不建议是用)!!!