一个单纯的select不能解决问题,因为你无论怎么比较,你的前面产生的max必须要保存起来,应该用过程来实现

解决方案 »

  1.   

    select decode(sign(maxfield1field2-field3),1,maxfield1field2,field3)
    from 
    (
    select decode(sign(field1-field2),1,field1,field2) maxfield1field2,field3 from tablename
    );如果字段多了就麻烦了
      

  2.   

    SELECT GREATEST(f1,f2,f3) FROM t1
      

  3.   

    GerryYang(轻尘)
    有没有 decode
      

  4.   

    GerryYang(轻尘)
    有没有 decode 这个函数的具体用法的资料啊?
    (有其他的函数就更好拉!)
      

  5.   

    你的问题要用  GREATESTSELECT GREATEST(f1,f2,f3) FROM t1
      

  6.   

    onejune4450(中文字符)
    支持,厉害
      

  7.   

    Fire_King(老龙明)到ORACLE的官方网站上去下载,有各种版本的帮助文件。
      

  8.   

    onejune4450(中文字符),牛!佩服!学习
      

  9.   

    厉害
    请问有没有取最小的函数呢?类似于greatest()
      

  10.   

    我找到了
    SELECT least(1,2,3) FROM dual;
      

  11.   

    记住了greatest,least.
    其实大家可能都知道,可能用的时候忘了.
    别人一说,我就想起来了:)