ORDER BY a desc,a 是字符串型.字段记录的是 12 ,25,9,等等字符串,但是要求按照
整型排序.
现在排序结果是 9,25,12
但需要的效果是 25,12,9 
这种sql语句怎么写呀?还是用什么其它方法实现?

解决方案 »

  1.   

    ORDER BY cast(a as int) desc
      

  2.   

    Order By Cast(A As Int) Desc
      

  3.   

    select * from tb 
    ORDER BY right('00000'+a,5) desc
      

  4.   

    Order By Convert(Int, A) Desc
      

  5.   

    cast()和convert()都能实现数据的类型转换,
      

  6.   

    --cast(字段名 AS 新类型)
    --convert(新类型,字段名)
    Order By Cast(A As Int) Desc
    Order By Convert(Int, A) Desc
      

  7.   

    在mysql中不能用阿
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Int,re) desc' at line 1
    SELECT * FROM myexamples.article where catalog="60" order by convert(Int,a) desc;
      

  8.   

    我试出来了 
    select * from tb 
    ORDER BY right('00000'+a,5) desc就可以解决问题
      

  9.   

    select * from tb 
    ORDER BY right('00000'+a,5) desc是什么意思呀?