Maximo查询按两列最大值降序排序问题咨询
Maximo查询按两列最大值降序排序问题咨询
嗨,我看了你遇到的Maximo查询排序问题啦!你已经找对了方向——用GREATEST函数来取fxf_timepercent和fxf_meterpercent的最大值作为排序依据,但结果是升序而非你想要的降序,问题其实很容易解决:只需要在排序语句的末尾加上DESC关键字即可。
你原本的排序逻辑是对的,COALESCE把NULL值替换为0的处理也很稳妥,能避免GREATEST函数遇到NULL值时出错。修改后的完整查询语句如下:
((exists (select 1 from maximo.asset where ((location like '%RDU%')) and (assetnum = pm.assetnum and siteid=pm.siteid) and (plustisconsist=0)))) and ((fxf_meterpercent > 95.0 or fxf_timepercent > 95.0)) order by GREATEST( COALESCE(fxf_timepercent, 0), COALESCE(fxf_meterpercent, 0) ) DESC
这样调整后,查询结果就会按照两列中的最大值从高到低降序排列了。
备注:内容来源于stack exchange,提问作者Strangeleak
相关产品推荐
相关产品推荐

