要取一些数据   在查询的时候还要作判断  如下啊
表A有Id,WaterValue,RelValue,ProductValue字段,现在取表A的数据 Id,WaterValue,RelValue,ProductValue和生产值,
先要判断
WaterValue>=RelValue,生产值=ProductValue*(1-WaterValue-RelValue)   
否则的话 ,生产值=0
这样的存储过程怎么写啊    高手们  赐教啊  存储过程

解决方案 »

  1.   

    select Id,WaterValue,RelValue,ProductValue,
    case when WaterValue>=RelValue then ProductValue*(1-WaterValue-RelValue) else 0 end 生产值 from a
      

  2.   

    问一下   多个判断也可以用多个case吧  
      

  3.   

    大哥  貌似不行啊  报RelValue 无效的错误啊
      

  4.   

    多个判断也可以用多个case吧 ?
    case when语法,去看看啊oracle基础知识。
      

  5.   

    不是啊   刚用你的那个语法好像不行啊   RelValue 无效啊
      

  6.   

    表里面的
    select Coal,InputData,CreateDate,WaterPlan,Water,
         case when WaterPlan>=Water then InputData*(1-WaterPlan-Water) 
         else 0 end BuckleWater
         from AssessmentFormulaData
      

  7.   

    你表里有RelValue 这个字段吗?
      

  8.   

    那你最初的问题是怎么提的?
    表A有Id,WaterValue,RelValue,ProductValue字段,现在取表A的数据 Id,WaterValue,RelValue,ProductValue和生产值,。