查询出来按字段sequence排序,我想把0的替换成10000
order by replace(sequence,0,10000) 这样0是替换成10000了,但好象把这个字段按字符排序了,本来是整型的是不是有别的方法呀

解决方案 »

  1.   

    order by replace(sequence,0,10000)+0
      

  2.   

    谢谢楼上的 转成整数没问题了
    问题还是replace函数,我以为是把数据为0的换的10000,不为0的就不变实际好象是把数据只要包含0的都转换了,比如10好象转换成110000了。是不是我这个问题不应该用replace呀
      

  3.   

    确实不能这样替换,用
    order by 0+IF(sequence=0,10000,Sequence)
      

  4.   

    order by IF(sequence=0,10000,Sequence) 就这么写查询分析器里出来就是正确的了
    谢谢楼上两位,不过hibernate里if语句那里还是有点问题,不知道是不是不支持if语句
    我再去研究下,先把这个帖子结了