select prd_itm, (select max(prd_p1qty, prd_p2qty, prd_p3qty) as 最高月用量 from prd_det)
from prd_det

解决方案 »

  1.   

    用case when 嵌套或自定义函数
      

  2.   

    三个变量取最大值:
    select prd_itm,(case when prd_p3qty>(case when prd_p1qty>prdp2qty then prd_p1qty else prd_p2qty end) then prd_p2qty else (case when prd_p1qty>prdp2qty then prd_p1qty else prd_p2qty end) end) as 最高月用量
    from prd_det
    --或:
    select prd_itm,max(prd_tmp) as 最高月用量 from(
    select prd_itm,prd_tmp=prd_p1qty from prd_det 
    union all 
    select prd_itm,prd_tmp=prd_p2qty from prd_det 
    union all 
    select prd_itm,prd_tmp=prd_p3qty from prd_det ) tmp group by prd_itm